1 名前:デフォルトの名無しさん (ワッチョイ 5394-4hBO) mailto:sage [2016/12/27(火) 02:07:41.47 ID:HrGPkQcW0.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part125 echo.2ch.net/test/read.cgi/tech/1475930006/ ■関連スレ C#, C♯, C#相談室 Part91 echo.2ch.net/test/read.cgi/tech/1467211515/ ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ ■情報源 https://msdn.microsoft.com/en-us/library/gg145045.aspx referencesource.microsoft.com/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configure
172 名前:デフォルトの名無しさん (ドコグロ MM16-vnn7) mailto:sage [2017/01/04(水) 19:40:51.40 ID:CCOfH6ODM.net] >>167 別に社長のためにやってる訳じゃないよ (てかお客さんの要望を社長が知ってるとか零細かよ w) トラブったら自分が苦労するだけだから なので Update も事前にテストしてから導入するし >>165 も書いてるような自動テストも活用してる まあ会社や作るものによって色々違うとは思う
173 名前:デフォルトの名無しさん (ワッチョイ ffbb-Sa8B) mailto:sage [2017/01/04(水) 20:04:33.02 ID:6hrR76Ry0.net] > お客さんの要望を社長が知ってる ゲイツのことだな。
174 名前:デフォルトの名無しさん (ワッチョイ 07dc-Ft01) mailto:sage [2017/01/04(水) 23:17:39.13 ID:P9CxkEKM0.net] そもそも客側にまともなコスト勘定と経営判断ができるなら、大概の案件は出来合いのパッケージ入れたら終わりだからな それをわざわざアホみたいにコストかけてオーダーメイドしてるんだから客からすれば柔軟な対応()を期待するのは当然
175 名前:デフォルトの名無しさん (ワッチョイ f394-+QcV) mailto:sage [2017/01/04(水) 23:49:33.72 ID:yVktE4ER0.net] プログラムの売り手と買い手のあれこれはム板じゃなくてマ板でやれと誰かが言ってたみたい
176 名前:デフォルトの名無しさん (ワッチョイ eb46-Eko0) mailto:sage [2017/01/04(水) 23:50:29.77 ID:sLM1aG3B0.net] すみません、間違えてソフトウェア板のほうに書いてしまったのですが、改めて質問させてください。 みなさんMVCやMVVMといったUIアーキテクチャの知識はどのように勉強しましたか? ネットの情報をあさっているのですが、いまいちぼんやりとしてどう実装していいのか悩んでいます なにかよい書籍やサイトがあれば教えていただきたいのですが、よろしくお願いします。 Windows Formで開発しています。
177 名前:デフォルトの名無しさん (アウアウオー Saff-fu3N) mailto:sage [2017/01/05(木) 00:32:21.65 ID:e3gR0RPga.net] Windows FormにMVCもMVVMも適用できないのでは?w Windows Formにそんな大げさな思想はいらないでしょ。 単にモデルに相当する部分のコードをFormに書かなきゃそれで十分だし、 それは余程筋が悪い人じゃなきゃ誰が書いても普通は自然とそうなる
178 名前:デフォルトの名無しさん (ワッチョイ 5b3c-XGsk) mailto:sage [2017/01/05(木) 00:48:38.63 ID:heQK3sW60.net] MVCはともかく、MVVMは関係ねーな…w
179 名前:デフォルトの名無しさん (ワッチョイ 0bdc-60SX) mailto:sage [2017/01/05(木) 00:53:49.13 ID:xL0iNOQ30.net] 本来のMVCは昔のSmalltalkの制約から生まれたもので、そのまま他のプラットフォームに適用できるものではない WinFormsの場合、VとCを分ける意味はない Mを分離するだけなら、いわゆる「ビューとロジックの分離」ってやつで特に悩むことはないと思う
180 名前:デフォルトの名無しさん (ワッチョイ 2bbb-HvS5) mailto:sage [2017/01/05(木) 01:17:34.27 ID:5IyfMoci0.net] MVCとMVVMを三行で説明してくれ。
181 名前:デフォルトの名無しさん (ワッチョイ 5b3c-XGsk) mailto:sage [2017/01/05(木) 01:22:16.28 ID:heQK3sW60.net] M M V V C VM
182 名前:デフォルトの名無しさん (アウアウイー Sa3f-WHJN) mailto:sage [2017/01/05(木) 01:52:00.35 ID:yCqown6ia.net] >>166 具体的に、とか叩かれてた俺も医療。 若い人は知らんのだろう。
183 名前:デフォルトの名無しさん (ワッチョイ 4fcb-626o) mailto:sage [2017/01/05(木) 01:54:24.81 ID:OcKsuL+R0.net] >>173 雑誌やソフトの提灯だからなぁ そもそも画面と内部なんて切れないのに切っていいことって何かある? ってところからぶっちゃけ説明できる奴なんかいないから 現場に合わせてテキトーにやっとけばって思う
184 名前:デフォルトの名無しさん (ドコグロ MMff-JQu6) mailto:sage [2017/01/05(木) 08:18:11.90 ID:IruuUmglM.net] >>179 若いとかは関係ないでしょ 単にやってる仕事によるってだけのことかと 信頼性よりリリース時期が優先な業種もあるし
185 名前:デフォルトの名無しさん (スプッッ Sdff-bDM2) mailto:sage [2017/01/05(木) 08:22:52.46 ID:PsU3CkNVd.net] >>181 そもそもMSBuild叩いてビルドすらできないやつらもいるだろね
186 名前:デフォルトの名無しさん (スププ Sdff-WHJN) mailto:sage [2017/01/05(木) 08:33:50.14 ID:BBOrCYHKd.net] >>181 同年代にそこそこの規模のプロジェクトやってたらあのへん一連のトラブルほとんどの人が
187 名前:MSにキレた事件だと思ってたわ。 [] [ここ壊れてます]
188 名前:デフォルトの名無しさん (アウアウエー Saff-7WTe) mailto:sage [2017/01/05(木) 13:18:03.10 ID:WnmYFKGaa.net] オリジナルのMVCからMVVM(のひとつ手前のPresentation Modelパターン)までの流れを ざっくりと知りたい人にはこちらのスライド6〜23がおすすめ あの日見たMVCを僕たちはまた知らない for RoR www.slideshare.net/shinnosukekugimiya/mvc-for-ror/6
189 名前:デフォルトの名無しさん (ワンミングク MMff-+flj) mailto:sage [2017/01/05(木) 20:37:30.07 ID:STssXerHM.net] この業界ってめちゃくちゃ幅が広いのになんで自分の携わる領域が絶対の常識みたいな視野の狭い人が多いのか
190 名前:デフォルトの名無しさん (ワッチョイ 2bbb-HvS5) mailto:sage [2017/01/05(木) 21:13:27.12 ID:5IyfMoci0.net] 大海を知る蛙はいないって諺があってな。
191 名前:デフォルトの名無しさん (スップ Sdff-YkAD) mailto:sage [2017/01/05(木) 21:19:56.05 ID:hTR7neYkd.net] 自動テスト走らせて終わりって話多くてすごいなぁってのと良いなぁってのをいつも思う
192 名前:デフォルトの名無しさん (ワッチョイ fb46-IbiL) mailto:sage [2017/01/05(木) 21:37:50.19 ID:rW/6GZ2i0.net] 172です。皆さんありがとうございます。 無理に適用しようと思わないほうがいいんですかね。 まずは皆さんが言うようにロジックの分離を意識してみます。 >>184 ありがとうございます。ちょっと見てみます。
193 名前:デフォルトの名無しさん (ワッチョイ 4fcb-626o) mailto:sage [2017/01/05(木) 22:00:20.10 ID:OcKsuL+R0.net] >>185 その言葉が自分には当てはまらないと思ってるやつばっかりだからさ
194 名前:デフォルトの名無しさん (スフッ Sdff-2e51) mailto:sage [2017/01/05(木) 23:04:36.88 ID:QOSLe2yYd.net] >>187 GUIなら自動テストだけで済ますなんて不可能だもんな
195 名前:デフォルトの名無しさん (ワッチョイ 5f90-pn3f) [2017/01/05(木) 23:11:41.74 ID:EwRsaOli0.net] テストテストいってるやつは テストエンジニアとなのるコーダー以下
196 名前:デフォルトの名無しさん (ワッチョイ 2bbb-HvS5) mailto:sage [2017/01/06(金) 01:09:53.85 ID:in81s7xm0.net] >>191 ここまでのクズはなかなかいない。
197 名前:デフォルトの名無しさん (ワッチョイ 5f90-pn3f) [2017/01/06(金) 01:29:37.38 ID:WSjKfiqE0.net] テストエンジニアと名乗るあほ会社がいたなー。 奴ら恥ずかしくねーのかね。開発できないからテストしてるだけなのに。
198 名前:デフォルトの名無しさん (ワッチョイ 5b3c-bDM2) mailto:sage [2017/01/06(金) 02:04:56.09 ID:b3HzQEm20.net] >>190 >GUIなら それはちと違う。
199 名前:デフォルトの名無しさん (ワッチョイ 6f13-2e51) mailto:sage [2017/01/06(金) 02:57:19.46 ID:cmLDW6hw0.net] >>194 GUIを全部自動テストで済ませてるの?
200 名前:デフォルトの名無しさん (アウアウイー Sa3f-WHJN) mailto:sage [2017/01/06(金) 02:58:26.63 ID:GdJpzA35a.net] テスト屋バカにするとは、なかなか中小の発想だなあ。
201 名前:デフォルトの名無しさん (ワッチョイ df17-51vH) mailto:sage [2017/01/06(金) 03:14:17.58 ID:I3Occ/9i0.net] お前等の頭にここのスレタイを入力して応答を確認するテストをしてみてくれないか。
202 名前:デフォルトの名無しさん (ワッチョイ df30-QVlo) mailto:sage [2017/01/06(金) 05:45:23.72 ID:Zbbenqpe0.net] 人類初心者ならこんなもんだろ
203 名前:デフォルトの名無しさん (ワッチョイ 5b3c-bDM2) mailto:sage [2017/01/06(金) 06:15:51.87 ID:b3HzQEm20.net] >>195 全部自動化できない理由はGUIだからではないだろ
204 名前:デフォルトの名無しさん (スフッ Sdff-2e51) mailto:sage [2017/01/06(金) 09:23:52.69 ID:zpqqPJuXd.net] >>199 全部自動テスト化できないのは必ずGUIであるなんて一言も言ってませんが
205 名前:デフォルトの名無しさん (ワッチョイ df17-51vH) mailto:sage [2017/01/06(金) 11:09:41.00 ID:I3Occ/9i0.net] 見事にバグってるようだな。 < 頭
206 名前:デフォルトの名無しさん (スップ Sdff-bDM2) mailto:sage [2017/01/06(金) 12:10:35.65 ID:YJ4SgLJvd.net] >>200 必要条件と十分条件でググってこいwww
207 名前:デフォルトの名無しさん (ワッチョイ bb63-QVlo) mailto:sage [2017/01/06(金) 12:38:38.84 ID:k+rThWmR0.net] ググるより義務教育受けてこい
208 名前:デフォルトの名無しさん (スフッ Sdff-2e51) mailto:sage [2017/01/06(金) 13:23:06.57 ID:zpqqPJuXd.net] しょうもな
209 名前:デフォルトの名無しさん (ワッチョイ 5f90-pn3f) [2017/01/09(月) 21:30:23.78 ID:I4EKGEh90.net] PHP スレッドが死んでいたのでここで質問させて頂戴 echo mb_detect_encoding($asins[0][0], "JIS,SJIS,eucjp-win,sjis-win,UTF-8"); PHPで文字列の文字コードを判別する場合、 この様に引数に予め複数の文字コードを列挙する必要があるのでしょうか? 感覚的には、mb_detect_encoding関数の引数に 調査対象の文字列を入れれば、自動で文字コードが検出されるものかと思っておりました。
210 名前:デフォルトの名無しさん (ワッチョイ 5b3c-bDM2) mailto:sage [2017/01/09(月) 21:43:37.92 ID:qNaaD21i0.net] >>205 スレチ
211 名前:デフォルトの名無しさん (ワッチョイ df17-51vH) mailto:sage [2017/01/09(月) 22:50:57.27 ID:31i75J/I0.net] なぜにここで。w せめてこっちで。 スレ立てるまでもない質問はここで 145匹目©2ch.net echo.2ch.net/test/read.cgi/tech/1483755167/
212 名前:デフォルトの名無しさん (ワッチョイ 0bba-KSNS) mailto:sage [2017/01/10(火) 03:55:42.79 ID:ZxwznXIF0.net] つか板違いじゃね phpはwebprogだろ?
213 名前:デフォルトの名無しさん (ワッチョイ 5b3c-bDM2) mailto:sage [2017/01/10(火) 07:27:16.02 ID:x8VqU/Jr0.net] >>208 あそこ息してなくね?
214 名前:デフォルトの名無しさん (オッペケ Sr3f-LKdv) mailto:sage [2017/01/10(火) 10:47:15.57 ID:y5nNWUlVr.net] phpスレ死んでないじゃん 【PHP】下らねぇ質問はここに書き込みやがれ 7 [無断転載禁止]©2ch.net echo.2ch.net/test/read.cgi/tech/1478657006/
215 名前:デフォルトの名無しさん (ワッチョイ 6b87-IbiL) [2017/01/10(火) 16:37:08.82 ID:VMz618Ma0.net] DataGridViewのスクロールで質問させてください。 マウスホイールを1段階回すと、3行スクロールするのですが、 沢山スクロールさせたくて大きく回転させたときに、 3行ずつのスクロールがだらだら継続してスクロールするような 動作になってしまいます。 エクセルのスクロールみたいに、大きく回転させたときは、 短時間でまとめて何行もスクロールするようにさせるには、 どのようにすれば良いでしょうか。
216 名前:デフォルトの名無しさん (ワッチョイ 4fce-O2rp) mailto:sage [2017/01/11(水) 03:14:29.19 ID:rLEOP1iX0.net] WM_MOUSEWHEEL
217 名前:デフォルトの名無しさん (ワッチョイ 67c0-q48i) mailto:sage [2017/01/12(木) 01:10:29.42 ID:1UPTCkNR0.net] 年末年始のバージョン談義を他人事だと笑ってたら、VS2005&2.0縛りの改修案件が来たでござる・・・ linqって便利だったんだな
218 名前:デフォルトの名無しさん (ワンミングク MMe2-kkJw) mailto:sage [2017/01/12(木) 01:36:15.87 ID:jfwpinV9M.net] 同じ状況でジェネリック型推測が弱くて困ったな ジェネリックメソッドに匿名デリゲートがうまく渡せないんだわ これのせいでLINQの再現ができなかった
219 名前:デフォルトの名無しさん (ワッチョイ 573c-Fvni) mailto:sage [2017/01/12(木) 01:51:54.01 ID:qhQd7W/g0.net] >>213 バージョンにこだわってたやつは、結局最後までビルド方式を具体的に説明できなかったよな
220 名前:デフォルトの名無しさん (スップ Sdf2-Fvni) mailto:sage [2017/01/12(木) 02:01:35.67 ID:5xl7vtsqd.net] 大方ビルドスクリプトすら書いたことなかったんだろ
221 名前:デフォルトの名無しさん (ワッチョイ d3bb-dHfL) mailto:sage [2017/01/12(木) 02:33:46.24 ID:arip6tnc0.net] Linqは糞やで。
222 名前:デフォルトの名無しさん (ワッチョイ 26cb-TTK6) mailto:sage [2017/01/12(木) 05:22:30.14 ID:Rz+H5K5o0.net] >>217 よくわかってるじゃん
223 名前:デフォルトの名無しさん (ワッチョイ c387-YL17) [2017/01/12(木) 11:28:08.09 ID:sl7x1gs80.net] >>212 >>211 ですが、ありがとうございます。 そのプロパティを確認してみます。
224 名前:デフォルトの名無しさん (ワンミングク MMe2-kkJw) mailto:sage [2017/01/12(木) 20:13:55.19 ID:wTRJIMgPM.net] Linqは最高だろ もうループなんて書きたくない
225 名前:デフォルトの名無しさん (オッペケ Sr37-tin3) mailto:sage [2017/01/12(木) 20:24:43.40 ID:pcmVyHykr.net] インストーラーはツール使うけどアップデータは自分で作るの?
226 名前:デフォルトの名無しさん (ワッチョイ c387-YL17) [2017/01/12(木) 21:31:14.23 ID:sl7x1gs80.net] 210、218ですが、まさにやりたいことがこのページに掲載されていました。 point56.blogspot.jp/2013/11/cdatagridview.html ですが、このページで書かれている派生クラスの使い方が全くわかりません・・・。 いろいろ派生クラスについて説明されているページを見たのですが、 理解できないで困っています。 どのようにすれば(イベント登録すれば)、DataGridViewのマウスホイールイベントをこのクラスで拾うことができるのでしょうか。
227 名前:デフォルトの名無しさん (ワッチョイ f65e-q48i) mailto:sage [2017/01/12(木) 21:36:29.73 ID:PgQtmrLv0.net] >>222 そのコードを追加するとDataGridViewExという新しいコントロールが追加されるからデザイナから設定する
228 名前:デフォルトの名無しさん (ワッチョイ c387-YL17) [2017/01/13(金) 09:09:29.07 ID:8SyQt6YV0.net] >>223 ありがとうございます! 新しいコントロールを作るイメージなんですね。 既存のコントロールのイベントに割り込ませてデータを操作するものかと思ってました。
229 名前:デフォルトの名無しさん (ワッチョイ bb42-o2zU) mailto:sage [2017/01/13(金) 15:34:39.80 ID:djneXx1M0.net] >>224 継承ってのはそういうこと 既存のクラスを継承して何かを付け加える
230 名前:デフォルトの名無しさん (ワッチョイ c387-YL17) [2017/01/13(金) 19:03:27.21 ID:8SyQt6YV0.net] >>225 解説ありがとうございます。 また一つためになりました。
231 名前:デフォルトの名無しさん (ワンミングク MMe2-kkJw) mailto:sage [2017/01/13(金) 19:26:27.17 ID:wiy2qrIvM.net] どうしても多重継承したい 多重継承しないと人質が殺される そんな時はどうすればいいですか?
232 名前:デフォルトの名無しさん (ワッチョイ 573c-9HYG) mailto:sage [2017/01/13(金) 19:30:04.78 ID:HmhyNPER0.net] 人質を犠牲にしろ
233 名前:デフォルトの名無しさん (ワッチョイ f69d-dHfL) mailto:sage [2017/01/14(土) 00:14:13.97 ID:exppjyX70.net] 正解
234 名前:デフォルトの名無しさん (ワッチョイ d3bb-dHfL) mailto:sage [2017/01/14(土) 05:16:19.52 ID:CFNCXkHH0.net] C++にする。
235 名前:デフォルトの名無しさん (オッペケ Sr37-BaOC) mailto:sage [2017/01/14(土) 18:54:20.81 ID:JH3WL89Lr.net] >>227 interfaceにして委譲コードを書きまくる
236 名前:デフォルトの名無しさん (ワッチョイ d3bb-dHfL) mailto:sage [2017/01/16(月) 06:25:25.99 ID:x3SkEOMR0.net] 委譲コードってなんですか。
237 名前:デフォルトの名無しさん (ワッチョイ f717-q48i) mailto:sage [2017/01/16(月) 23:34:39.66 ID:eY5lFpG80.net] 処理を委譲するので移譲(デリゲート)と呼ばれます
238 名前:デフォルトの名無しさん (ワッチョイ d3bb-dHfL) mailto:sage [2017/01/17(火) 06:40:12.79 ID:cbxfPpyL0.net] 関数ポインタのことか。
239 名前:デフォルトの名無しさん (ワッチョイ 7e23-q48i) mailto:sage [2017/01/17(火) 09:35:08.34 ID:ku+L5HXP0.net] 移譲コードは謎だが、継承に対する移譲ってことで、クラスのフィールドにクラスのインスタンスを生成して利用する形態のことかと 移譲コードってのは、その内部に有るクラスへのアクセス手段のコードってことかな?
240 名前:デフォルトの名無しさん (ワッチョイ 924c-nun4) mailto:sage [2017/01/17(火) 11:24:04.19 ID:PBcgESW70.net] 関数ポインタってか、処理を動かす箱みたいな感覚
241 名前:デフォルトの名無しさん (ワッチョイ 7e23-q48i) mailto:sage [2017/01/17(火) 13:32:23.97 ID:ku+L5HXP0.net] >>236 いや、オブジェクト指向にはC#のデリゲートとは違う移譲という概念が有って、継承と似て非なるテクニックとして屡々使われる https://ja.wikipedia.org/wiki/%E5%A7%94%E8%AD%B2 C#のはこっち https://ja.wikipedia.org/wiki/%E3%83%87%E3%83%AA%E3%82%B2%E3%83%BC%E3%83%88_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)
242 名前:デフォルトの名無しさん (オッペケ Sr37-BaOC) mailto:sage [2017/01/17(火) 17:49:23.15 ID:KIp0gGYMr.net] interface IX f1, f2, f3,...fn interface IY g1, g2, g3,...gn class A : IX, IY { XImp x; f1(){} f2(){} ... fn(){} g1() => x.g1(); g2() => x.g2(); ... gn() => x.g3(); } なんちゃて多重継承w
243 名前:デフォルトの名無しさん (アウアウカー Sa5f-tnb3) [2017/01/18(水) 20:02:35.80 ID:XUepeqxVa.net] お勉強でASP.NETかじりだしたらソースコード自動で吐くのはいいが、フレームワークのお作法ばっかでプログラミングの練習にならんのね スタンドアロンアプリにネット接続みたいなことやったほうがプログラミングのスキルはつくのかね?
244 名前:デフォルトの名無しさん (ブーイモ MM8b-7fB1) mailto:sage [2017/01/18(水) 20:05:28.14 ID:m92xtUQhM.net] MVCの方やれば? もっと原始的な仕組みだから何やってんのかよくわかるよ
245 名前:デフォルトの名無しさん (ワントンキン MMe2-kkJw) mailto:sage [2017/01/18(水) 20:33:15.95 ID:vXs3og/7M.net] ASP.NETが自動で吐くコードは正直使えない
246 名前:デフォルトの名無しさん (スップ Sdf2-Fvni) mailto:sage [2017/01/18(水) 20:35:13.00 ID:bBGXUnSyd.net] >>239 曖昧な言い方されるとわからん ASP.NET Core触ってその感想なわけ?
247 名前:デフォルトの名無しさん (ワッチョイ bbdc-lDPz) mailto:sage [2017/01/18(水) 22:05:09.42 ID:cw6vafSX0.net] 一口にプログラミングのスキルといっても色々ある 1. 複雑で大規模なロジックをエレガントに設計・実装できる 2. 難解なアルゴリズムを設計・実装できる 3. ハード・ミドルウェア・通信プロトコルなど、インフラを深く理解してプログラムから使いこなせる ASP.NETで身につきにくく、より薄いWebフレームワークを使うことで身に付くのは3 一般的なアプリケーションエンジニアに求められるのは1 解析とかコンパイラ開発のような特殊分野の専門家は2
248 名前:デフォルトの名無しさん (ワッチョイ 573c-Fvni) mailto:sage [2017/01/18(水) 23:21:54.21 ID:T8mUfMDR0.net] >>241 具体的には何のコードのことを言ってるの?
249 名前:デフォルトの名無しさん (ワッチョイ f3bb-3qL8) mailto:sage [2017/01/19(木) 07:29:23.09 ID:q3hudiC70.net] 求められてるのは仕様書もない糞コードを読むスキルやで。
250 名前:デフォルトの名無しさん (ワントンキン MM9f-aDhR) mailto:sage [2017/01/19(木) 09:35:58.54 ID:uhfgjGGlM.net] https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
251 名前:デフォルトの名無しさん (ワッチョイ 230d-516J) [2017/01/19(木) 15:19:30.98 ID:qAXGwWjx0.net] 文字列からBOMを除去したいのですがどうすればいいですか? stackoverflowにあった以下のコードを試しましたが、StartsWith()が常にTrueを返して困っています private readonly string _byteOrderMarkUtf8 = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); if (str.StartsWith(_byteOrderMarkUtf8)) { str = str.Remove(0, _byteOrderMarkUtf8.Length); }
252 名前:デフォルトの名無しさん (アウアウウー Sa67-gIHQ) mailto:sage [2017/01/19(木) 15:30:12.33 ID:IRyNom+ra.net] BOMってのは生のバイナリーレベルの話であって 少なくともC#のstringに含まれるような代物じゃないと思うんだけど
253 名前:デフォルトの名無しさん (ワッチョイ 9319-r4l2) mailto:sage [2017/01/19(木) 15:40:35.80 ID:4wnEpswf0.net] BOMもUnicode文字の1つU+FEFFだからStringに入れることはできるよ どっから入れるかは微妙なとこだけど(UTF8Encoding.GetStringは問答無用で消すみたいだし) で試したけど"\ufeffA"はifに入って消えたし"A"はifに入らなかった
254 名前:デフォルトの名無しさん (ブーイモ MM67-XRLM) mailto:sage [2017/01/19(木) 17:59:08.76 ID:runhsDy0M.net] シリアル通信プログラムを作成しています。 メインスレッドでコマンド1を送信し、受信内容がAだったらコマンド2を送信するという処理にしています。 受信側(別スレッド?)の処理が終わる前にメイン側が受信内容の判断処理に入ってしまうため、本当に受信内容がAの場合でもコマンド2に移ることができません。 どのように対処すればよいでしょうか。
255 名前:デフォルトの名無しさん (ワッチョイ 7f4c-VYni) mailto:sage [2017/01/19(木) 18:08:11.71 ID:FKV8qOhE0.net] 受信処理の整合性を判断して、受信処理からInvokeで判断処理を呼ぶ
256 名前:デフォルトの名無しさん (ワッチョイ 03c0-SmTw) mailto:sage [2017/01/19(木) 18:10:12.42 ID:HUduSCHL0.net] >>250 .NET4
257 名前:.0の頃に似たようなことやったけどプロデューサー/コンシューマー パターン使ってBlockingCollection経由で受信スレッドと送信スレッドに分けたわ 今だとSystem.Threading.Tasks.Dataflowでもっとシンプルに出来ると思うけど [] [ここ壊れてます]
258 名前:デフォルトの名無しさん (アウアウウー Sa67-gIHQ) mailto:sage [2017/01/19(木) 18:22:53.29 ID:IRyNom+ra.net] >>250 何を言ってるのかよくわからないけど、ひょっとして、 送信→受信データ解析→送信 この一連の流れを一つのメソッドで完結させようとしてない? だとしたらたぶんそれが間違ってる。 一連のシーケンスを処理する専用のオブジェクトを用意すればそんな問題は起こらない。
259 名前:デフォルトの名無しさん (オッペケ Sr87-8S/4) mailto:sage [2017/01/19(木) 18:25:27.59 ID:ACsZSSudr.net] c#を10年やってるのにまだ初心者の域を出ない…
260 名前:デフォルトの名無しさん (ワッチョイ f37b-3qL8) mailto:sage [2017/01/19(木) 18:41:37.78 ID:Ua4qBBzA0.net] C#だけやってても成長しないと思う 自分が理解できる範囲、自分が分かりやすい範囲でしか書かなくなるから
261 名前:249 (ワッチョイ cfb8-3qL8) mailto:sage [2017/01/19(木) 19:07:45.79 ID:TCIFCzqn0.net] >>251 ありがとうございます。 デリゲートで処理すればいいのですね。 >>252 ありがとうございます。 知らない単語が出てきたので調べてみます。 >>253 ご指摘の通りです。 送信メソッド:送信1→受信内容別に分岐→送信2 受信メソッド:DataReceivedイベントで受信
262 名前:デフォルトの名無しさん (ワッチョイ 7f4c-VYni) mailto:sage [2017/01/19(木) 22:09:21.74 ID:FKV8qOhE0.net] 昔、VC++でシリアル通信の非同期処理してた事があってさ、それをC#で実現しようとして SerialPortクラスのDataReceivedイベントと Threading.TimerクラスのTimerCallbackにAutoResetEventを入れて、 WaitHandle.WaitAnyで待機してた事を思い出した。 いま、納品現場で確認してもらったけど今まで問題が起こってないんだが、 本来、C#のシリアル通信でOVERLAPPEDの非同期処理を実現するには、 やっぱWin32APIをゴリゴリ書かんとダメなん?
263 名前:デフォルトの名無しさん (ワッチョイ 6f02-x7a5) mailto:sage [2017/01/20(金) 02:24:48.66 ID:rKwDbfSd0.net] シリアルで非同期ってどういうことかわからん 全2重のことを非同期っていってるのか?
264 名前:デフォルトの名無しさん (ドコグロ MM7f-j6UX) mailto:sage [2017/01/20(金) 08:16:43.67 ID:ymDflbNbM.net] >>258 >>257 はいわゆる非同期I/O とかOverlapped I/Oの話でしょ コマンド投げといて並行して何らかの処理を行って暇になったらデータ受信するって奴 まあ通常のシリアルドライバは常時受信してバッファーに溜め込んでるからあまり意味ないけど
265 名前:デフォルトの名無しさん (ワッチョイ 7f4c-VYni) mailto:sage [2017/01/20(金) 09:21:01.06 ID:aZ8cT+JU0.net] ふと気になっただけだ。 ごねんね、スレ汚して
266 名前:デフォルトの名無しさん (ワッチョイ 8fce-HQXh) mailto:sage [2017/01/20(金) 12:29:54.12 ID:JXdqXSkU0.net] C#脳だとどういう事か判らんのだな やっぱ知識が偏るよなあ
267 名前:デフォルトの名無しさん (ワッチョイ 6f02-x7a5) mailto:sage [2017/01/20(金) 12:49:05.39 ID:rKwDbfSd0.net] >>259 それはシリアル通信での話じゃないし。その上の層とアプリ層との間での話だろ どんな通信してようが、ローカルファイル読んでようが同じ、単なる非同期IOの話だし まあバッファリングしないシリアル通信相手に非同期IOかけても結局待つしかないけどな
268 名前:デフォルトの名無しさん (アウアウウー Sa67-gIHQ) mailto:sage [2017/01/20(金) 13:16:41.69 ID:98BzuqOpa.net] >>262 何を言ってるのかなこの人...
269 名前:デフォルトの名無しさん (ドコグロ MM7f-j6UX) mailto:sage [2017/01/20(金) 19:45:39.69 ID:ymDflbNbM.net] >>257 を読んで全二重とかいっちゃう人なのでお察しってことなんでしょ w
270 名前:デフォルトの名無しさん (ワッチョイ bf85-ZNqe) [2017/01/20(金) 20:39:08.06 ID:BC+BfvLQ0.net] 質問です! 今日からC#を勉強始めました 配列のコピーをしたいのですが ここのサイトをみると配列サイズに+1しています string[] newAuthors = new string[authors.Length + 1]; +1せずに string[] newAuthors = new string[authors.Length]; でいいと思ったのですが私の間違いでしょうか? www.woodensoldier.info/computer/csharptips/53.htm
271 名前:デフォルトの名無しさん (JP 0H07-SmTw) mailto:sage [2017/01/20(金) 21:07:21.40 ID:05MQpXAxH.net] やってみればいいんじゃない?
272 名前:デフォルトの名無しさん (ワッチョイ ff17-x7a5) mailto:sage [2017/01/20(金) 21:42:02.36 ID:MJq7L3EO0.net] 何の用途か知らないけど、ひょっとしてタイマーコールバック使ってるとこ見ると Task.Run( () => { } ); で囲むだけでお気楽マルチスレッドになることを知らないとか?