[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 10/20 08:57 / Filesize : 86 KB / Number-of Response : 364
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C#, C♯, C#相談室 Part76



1 名前:デフォルトの名無しさん mailto:sage [2012/10/11(木) 04:21:12.46 ]
前スレ
C#, C♯, C#相談室 Part75
toro.2ch.net/test/read.cgi/tech/1346940693/

Visual Studio 2010 Express
www.microsoft.com/japan/msdn/vstudio/express/default.aspx

Visual Studio 2012 Express
www.microsoft.com/visualstudio/11/ja-jp/products/express

38 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 01:45:56.81 ]
文字列検索するメソッド名

@Find
ASearch
BRetrieve

Bがあまり見慣れない英語なのでかっこいいんだけど、どれがいい?

39 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 02:01:16.69 ]
String.IndexOf
msdn.microsoft.com/ja-jp/library/system.string.indexof%28v=vs.80%29.aspx

40 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 02:05:10.55 ]
原宿ファッションのスレ眺めたらカッコヨサの概念が崩壊したのでお答えできない

41 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 06:01:12.95 ]
>>38
ゴールデンレトリーバーも知らん?
3は取得する意味

42 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 10:24:20.07 ]
個人的な乾燥だが、>27のfoo(trg) = 100;みたいに書けるデリゲートってデリゲートにする意味なくね?
デリゲートは、処理xを処理y渡しとけば(渡し先yが渡し元と非同期であっても)yがデリゲートをいつ呼び出そうが
大丈夫なように作るのが本筋だと思う(デリゲートは、コールバックやクロージャを実現する手段とみなすべきもの)
例えば、Hoge.Aが仮に非atomicな型(decimalとか)だと、
foo()に束縛されたHogeオブジェクトのフィールドAの排他について
foo(trg) = 100M;と書く先々でいちいち考慮せねばならなくなる
bar(ref tmp1, 100M); のような書き方の方が、排他について使う側が気にしなくて良くできるという意味ではマトモな希ガス
(bar()の中で排他とかできる故)

43 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 10:41:56.03 ]
無い物の話をしてもしょうがない

44 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 10:48:13.69 ]
htmlから各要素を抜き出したい
@正規表現
Ahtmlをxmlに変換してXDocumentで取得
BWebBrowserを使ってHtmlDocumentで取得
どれが主流なんでしょうか?
他に便利な方法はありますか?

45 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 10:51:36.02 ]
好みでどうぞ

46 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 11:03:34.85 ]
>>44
HTMLはタグの対応が多少おかしくてもブラウザが適当に解釈してくれる
このことに柔軟に対応できて速度が出るものを選択すべき



47 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 12:08:12.41 ]
で、それはどれなんだって話

48 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 12:12:14.76 ]
好みでどうぞ

49 名前:46 mailto:sage [2012/10/13(土) 12:47:27.96 ]
トレードオフ

50 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 13:02:13.67 ]
>>44ですが
他に簡単な方法はないということですよね?
AもBもLinqによる抜き出しが恐ろしく難しすぎて無理だった
(10時間ぶっつづけでやっているけど、目的の要素まで辿りつけない)
@にしておきます(でも、htmlが破損していた場合は無理とか何とか・・・)

51 名前:46 mailto:sage [2012/10/13(土) 13:08:16.29 ]
自分で作ったHTMLとか、特定のサイトのHTMLなら、それに特化すればいいから一概に言えない
好みでどうぞ

52 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 13:19:47.92 ]
3階層以上深く探すんならXPathSelectElementの方が楽だわ

53 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 13:22:26.80 ]
有名なWebサービスなら大抵はもっとプログラムから扱いやすい形のAPIが用意されてるから
HTMLを解析するという発想自体が間違っている場合も多いけどな

54 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 13:56:47.81 ]
>>53
結構大きいサイトです
APIとはなんでしょうか?

55 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 13:59:29.57 ]
>>54
URLに「こういうデータちょうだい」と書き込んでリクエストすると
XMLやJSONで生のデータが返ってくる

56 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 14:05:33.59 ]
必ずしも扱いやすい利用条件とは限らないが
そういうところはそもそもスクレイピングによるコンテンツの利用に対し…C#関係ないから止めとこう



57 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 14:43:40.87 ]
変な利用の仕方をしていたらアク禁になるということですか?
それは大変困るのでやめておきます

58 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 14:50:24.98 ]
普通のwebスクレイピングだってやりようによっちゃ刑事事件になったりするけどな

59 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 15:14:23.38 ]
静的コンストラクタのパフォーマンスへの影響がでかくて笑ったは
でも静的フィールドの初期化をフラグで判別するやりかたはもっと遅くて泣いた
スレッドセーフとかいろいろ便利なんだけど

60 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 18:39:22.13 ]
>>55
それAPIじゃない。ただのWebサービス。

61 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 18:45:27.49 ]
調べたらAPI利用するには登録が必要と書かれてた
とりあえず、解析してファイルダウンロードできるようになった
楽しいなこれ
派手なことしなければ、そこらのダウンローダー使っているのと変わらないからいけますよね?

62 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 18:47:27.00 ]
C#関係なさそうなので大手のwebサイト関連のスレいけ

63 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 19:23:27.18 ]
静的コンストラクタのパフォーマンスへの影響がでかくて笑ったは!

64 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 22:51:23.57 ]
>>60
今時REST APIを知らないとかやばくね

65 名前:デフォルトの名無しさん mailto:sage [2012/10/13(土) 22:54:50.84 ]
>>59
インラインで初期化しろ
複雑な場合はシングルトンを使えば同じくインラインでいける

66 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 04:55:00.29 ]
>>64
Web APIとApplication Programming
Interfaceを一緒にしちゃいけない



67 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 04:58:46.94 ]
認識のすれ違いとかくだらねーからどっかいけよ馬鹿

68 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 05:23:59.24 ]
>>67
発狂するなよ。
もともと>>53は大手のwebサービスは
通信インターフェースを公開するだけじゃなく
クライアントモジュールをJavascriptとか
APIの形で提供してるって話だろ。
それを>>55が理解できなかっただけ

69 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 08:43:01.39 ]
>>68
>>55>>53-54を受けての発言、それを考慮しないでつっこむ>>60が問題あるんじゃね

でもって、WebAPIはAPIじゃないとか思ってる>>66も問題があるんじゃね

クライアントモジュールやJavascript(のソース)をAPIだと思ってるなら、一番問題なのは>>68だが

70 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 08:53:20.74 ]
元々スクレイピングが始まりの話しだから>>53がSOAPやRESTの事を言ってるとしても文脈的に何もおかしくない
逆に>>53の書き込みでプログラミング言語のライブラリとして提供されてるApiのみを言ってると言うのは無理がある

スクレイピングに比べたら、RESTのインターフェイスも十分にプログラムから扱い安いAPIだろ


71 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 10:11:18.41 ]
Webサービスを利用するためにはインターフェイスが必要であって、
それがGUI(つまりHTML)であったりAPI(RESTなど)であったりするわけで
たとえばWebサービスをWindowsの機能に置き換えたりしても同じことなわけだが
クライアントモジュールだってそれ自体はAPIじゃなくて
そのモジュールをアプリから使うための外面がそのモジュールのAPIなんだよ

72 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 11:39:27.74 ]
67じゃないがそろそろ余所行けよ
頭大丈夫かお前ら

73 名前:デフォルトの名無しさん [2012/10/14(日) 11:41:11.77 ]
>>62で警告したのにまだやってるのか

ほんと雑談でスレが伸びるな

74 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 12:51:27.97 ]
プログラムからOS等の機能を利用できるようにしたのがAPI
プログラムからWebサービスの機能を利用できるようにしたのがWebAPI
どっちも同じです

75 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:00:35.21 ]
Web APIは「HTTPからWebサービス」じゃねえの

76 名前:デフォルトの名無しさん [2012/10/14(日) 13:03:42.24 ]
学者もどきみたいなのがいるなw

特定のコアが外部にシステムを提供してるのはAPIとみなせるだろ
PC=x86/AMD64でwindowsが動くパソコン
みたいな固定観念を押し付けるんじゃねえ
スレチだし



77 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:04:47.09 ]
>>74-75
頭大丈夫?主張しないといけないやまいに冒されてる?

78 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:07:41.49 ]
>>75
おk
Web APIとゆーのは、狭義には非HTTPベースのWebサービスの対立概念ということで正解


79 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:09:44.30 ]
駄目だコリア

80 名前:デフォルトの名無しさん [2012/10/14(日) 13:10:34.38 ]
webAPIを考える上ではhttpは単なる土管だよ

システムやサービスが高度化すると既存のシステムの上に
抽象的な概念が覆いかぶさる

その辺の考えの切り替えができない人はオールドタイプ

81 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:12:00.38 ]
>>76
この世の通信インターフェースすべてが
APIだったとは、知りませんでした。
ApplicationとProgramの意味を辞書でひくことをオススメします。

82 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:12:08.21 ]
スレ違いの概念が認識できないキチガイタイプはどう扱うべきですか

83 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:13:10.37 ]
>>80
セキュア─な運用のファイア─ウォ─ルに土管を通すのはメドイ


84 名前:デフォルトの名無しさん [2012/10/14(日) 13:13:22.34 ]
>>81
httpやwebサーバーなどを土管などにしたクラウドの
概念についてこれないのならついてこれないなりに
黙ってたほうがいいですよw

85 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 13:13:38.33 ]
キチガイ(の群れ)には触らない。
これ鉄則。

86 名前:デフォルトの名無しさん [2012/10/14(日) 17:29:40.57 ]
>>29
SMTPサーバ自体は、さくらインターネットのレンタルサーバを指定しています。



87 名前:デフォルトの名無しさん [2012/10/14(日) 17:31:29.71 ]
一定時間毎に処理結果をラベルに表示させる場合
次の様に Thread.Sleepを使うよりも Tiemr イベントを使う方が定石(一般)なのでしょうか?

for ( int i = 0 ; i < 100 ; i++)
{
label_hoge.Text = i.ToString() ;
Thread.Sleep(1000);
}


88 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 17:33:29.13 ]
Thread.Sleepでやってみて、それで更新されてるならそれでいいよ

89 名前:デフォルトの名無しさん [2012/10/14(日) 17:45:15.74 ]
>>88
更新される場合と、されない場合があります。
(応答無し)が表示される、場合があります。

1マシンで複数のアプリを動かしております。

90 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 18:05:14.26 ]
じゃあThread.Sleepは定石どころかやり方が間違ってるんだよ
悟ろうよ

91 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 18:28:09.81 ]
>>87

>ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
>ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。

toro.2ch.net/test/read.cgi/tech/1349163087/

あんたにはこっちのほうがお似合いだよ

92 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 19:00:44.87 ]
>>87
GUI自体がループされて描画されているんだから
自作のループを作る必要はないと思うんだ
ということでTimerでいいと思う

93 名前:デフォルトの名無しさん [2012/10/14(日) 19:44:16.03 ]
>>91
死ね。氏ねじゃないので勘違いしないでね。

>>92
サンキュー。
Timer使ってやります。

94 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 20:17:23.78 ]
またこいよ

95 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 20:20:12.84 ]
ああ、APIの定義がどうとかいうアホの言い争いよりは万倍いい

96 名前:デフォルトの名無しさん [2012/10/14(日) 20:29:32.63 ]


2:50 やっぱ神芸人だわ。
www.youtube.com/watch?v=j5NpRb3X91I



97 名前:デフォルトの名無しさん [2012/10/14(日) 20:47:53.88 ]
荒れてんな



98 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 21:27:55.65 ]
>>93
過疎ってるから構ってもらえてるけど少しは自分の低能さを恥なさい

99 名前:デフォルトの名無しさん [2012/10/14(日) 21:40:02.15 ]
Bccで送ったメールは
Toで送った人のメールの詳細を見ても
ばれないよね?

一応確認してみたけど
Bccのアドレスはどこにも入ってなかった。

勿論メールサーバ側のログを見れば分かると思うけど。

100 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 21:40:20.34 ]
お前殺されたいのか?

101 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 21:41:38.39 ]
>>100
これは通報しておかないとな

102 名前:デフォルトの名無しさん mailto:sage [2012/10/14(日) 21:51:50.78 ]
99が殺されて100が逮捕がモアベターな展開

103 名前:デフォルトの名無しさん [2012/10/14(日) 22:22:31.83 ]
>>100
また、前スレに続いて今度は殺害予告か?

また、通報せにゃならんかな。

104 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 06:56:44.98 ]
コードなんてそのうち覚えるけどUIのセンスは致命的だな
ああああああああああああああああああああイライラするうううううううううううううううう

105 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 15:07:25.93 ]
>>98
送り仮名さえ間違う自分を恥じなさい

106 名前:デフォルトの名無しさん [2012/10/15(月) 15:44:14.59 ]
ノノノハo∈
从‘ 。‘) < C#のスレッドに粘着してる人たち肝いんですけおどぉおお




107 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 15:47:51.96 ]
>>100
これはアウトだな。
マジ通報したから、警察が家に行くと思うよ。

108 名前:デフォルトの名無しさん [2012/10/15(月) 15:57:20.52 ]
List<string> ret = new List<string>();


ArrayListだと

どっちを使った方がええの?

個人的にArrayList の方が直観的にわかり易くていいいんですけど。

109 名前:デフォルトの名無しさん [2012/10/15(月) 15:57:58.34 ]
>>107
前スレッドで猫を虐待した奴の自宅に
警察が押しかけたらしいからな。

110 名前:デフォルトの名無しさん [2012/10/15(月) 15:59:41.96 ]
>>108
ArrayListは化石で互換のために残してあるだけとか
List<T>を使ってください

111 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 16:22:48.77 ]
>>109
今回は人間の殺害予告だから
前よりも迅速に対応してもらえると思う。
今頃>>100はガクブルだろうなw

112 名前:デフォルトの名無しさん [2012/10/15(月) 16:25:52.16 ]


View > Output で Output ウィンドウを表示した状態で
Debug.WriteLine("あいうえおおぉおお");

とコードを記述しても、 Outputウィンドウに何も
表示されません。

出力ウィンドウにVS2005までは出力されていたのですが
VS2010になって仕様が変わったのでしょうか?


113 名前:デフォルトの名無しさん [2012/10/15(月) 16:27:00.98 ]
>>110
多量のデータを突っ込む場合とかを考えると
やはり List<T> の方が良さそうですね。

ArrayListを今後コードを書く場合には
積極的に使いたいと思います。

114 名前:112 [2012/10/15(月) 16:32:36.36 ]
よくわからなんけど、VS再起動したら直りますた。

115 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 16:38:26.46 ]
>>108
またどぼんの犠牲者が・・・

116 名前:デフォルトの名無しさん [2012/10/15(月) 16:39:52.23 ]
C# wiki の奴がまた どぼん に嫉妬しとるな



117 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 17:10:26.00 ]
レガシーな情報削除しないGoogleがすべて悪い

118 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 19:31:58.75 ]
C#スレにふさわしい低脳なレスだな

119 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 19:35:07.82 ]
>>109
らしいって何の証拠も用意できないクズか

120 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 20:25:52.47 ]
>>109
ソースもないくせに話し出してくるなよ
ボケカス


121 名前:100 mailto:sage [2012/10/15(月) 20:31:36.37 ]
俺のために喧嘩するのはやめてよハゲ諸君

122 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 20:46:51.98 ]
うんこに触ったやつはみんなうんこ臭い

123 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 20:51:29.10 ]
誰が禿やねん剃ったるぞお前

124 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 21:05:00.43 ]
すんません勘弁してください

125 名前:デフォルトの名無しさん [2012/10/15(月) 22:07:40.73 ]
キーボードの文字が見えなくなってるのを
見る度に俺って素敵だな

と思ってしまう。

見えないキー

BackSpace
k l o n m
左 Control ↓矢印 →矢印

126 名前:デフォルトの名無しさん [2012/10/15(月) 22:34:08.30 ]
C# で独自ブラウザを作ってます。
どうも WebBrowser.Navigate("***"); を一度開いた後に
再度開き直すと、キャッシュの内容が保持されている様です。

どうすれば真っ新な状態のWEBデータを取得する事が出来ますか?
イメージ的には通常のブラウザにおいて、

F5 を押した時と同じ様な事がしたいです。



127 名前:デフォルトの名無しさん [2012/10/15(月) 22:42:28.12 ]
>>126
msdn.microsoft.com/ja-jp/library/txewax99%28v=vs.80%29.aspx

128 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 22:42:35.20 ]
小回りが利かないのでいちいちキャッシュを消す
support.microsoft.com/kb/326201

129 名前:デフォルトの名無しさん [2012/10/15(月) 22:55:35.28 ]
>>127
ボタンクリックの一連の流れの中で
WebBrowser.Navigate("***");
WebBrowser.Refresh();
をやってもやはり最新版が反映されません。

ただし、
WebBrowser.Navigate("***");
をやった後で、別のリフレッシュボタンクリックイベントにて
WebBrowser.Refresh(); を実行すると更新されます。


>>128
ちょっと試してみます。

130 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 23:23:43.19 ]


ん苦笑

131 名前:デフォルトの名無しさん [2012/10/15(月) 23:34:19.85 ]
なんで WebBrowser コントロールまじでつかえねぇ。
なんで標準でキャッシュを削除するメソッドとかいれねーんだよな。まったく。面毒性。

132 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 23:37:41.21 ]
簡易的にHTMLを表示するコントロールであって
ウェブブラウザ作るなんてことは想定されてない
文句があるならAX直接ホストしろよ

133 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 23:39:01.95 ]
>>131
チョイ待ち
axWebBrowserのインスタンスとれれば楽かもよ

134 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 23:47:22.27 ]
ideone.com/yyD0t

SHDocVw.dllを参照に入れる必要がある

system32の中にある

135 名前:デフォルトの名無しさん mailto:sage [2012/10/15(月) 23:47:29.02 ]
URIの最後になにか支障のない文字入れたら最新のが手に入ったんじゃなかった?

136 名前:デフォルトの名無しさん [2012/10/16(火) 00:21:31.10 ]
>>132
WEBブラウザを作るというより、
特定WEBページの欲しいデータだけ取ってるんです。
因みにログインしないと見えないページだったりするのでWEBブラウザをコントロールしてます。

>>133 >>134
ありがとうございます。試してみます。

>>135
DateTime.Now ・・・ を 後ろにくっつけて既に試してますが駄目でした。



137 名前:デフォルトの名無しさん mailto:sage [2012/10/16(火) 00:22:28.09 ]
なんでそんなもんくっつけるんだよ

138 名前:デフォルトの名無しさん [2012/10/16(火) 00:35:03.98 ]
>>137
URLを一意にする為です。
一意なURLだとバカなMSコントロールでもしっかりキャッシュせずに
最新版のデータを取得してくれると考えた次第です。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<86KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef