1 名前:デフォルトの名無しさん mailto:sageteoff [2015/03/18(水) 18:08:26.52 ID:irwZfv9C.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part114 peace.2ch.net/test/read.cgi/tech/1419512512/ ■関連スレ C#, C♯, C#相談室 Part86 peace.2ch.net/test/read.cgi/tech/1419608259/ ■コードを貼る場合は↓を使いましょう。 ideone.com/
111 名前:デフォルトの名無しさん mailto:sage [2015/03/31(火) 15:49:00.74 ID:EiIz2HrV.net] >>109 うん、この話がわからないってことはまったくUnityのことはわからない、 ってことだと思うしその段階でUnityの質問スレ行ってもとりあえず チュートリアルやってからにしてくれ、ってなると思うよ。 まぁ元々プログラムやってる人だと従わなきゃならない作法が多すぎて めんどくせー、とか不自由すぎる!ってなる部分はあると思うw
112 名前:デフォルトの名無しさん mailto:sage [2015/03/31(火) 16:43:34.03 ID://GhI1bQ.net] >>110 たびたびありがとうございます。 チュートやる方が近道のようですね。 最後のスレちを許していただけるならもう一個だけ質問させてください。 そもそも何でidを振るかというと 多数あるprefabからランダムに選び出して表示させると言うのをやりたいからです。 これはやはりprefabにidを振ってrandomで抽出しかないですよね? 何かほかにありますか?
113 名前:デフォルトの名無しさん mailto:sage [2015/03/31(火) 17:05:09.04 ID:EiIz2HrV.net] >>111 大体のUnityの作法に従う、という前提でいうと、 ・そういうPrefabを元にしてオブジェクトをインスタンスする為の MonoBehaviourを継承したクラス(スクリプト)を作ってカラのGameObjectに貼り付けとく。 ・そのクラスにGameObject[] prefabsみたいなパブリック変数の 配列を作っておいてインスペクタ上でPrefabをドラッグアンドドロップして配置しておく。 ・int i = Random.Range(0,prefabs.Length);とかでランダムの値出して Instantiate(prefabs[i],posiiton,rotation)みたいにインスタンスを生成する。 とかそんな感じだと思う。 パス書いたストリングの配列置いといて(そのストリング配列をどこに書いておくか、 読んでくるか、という問題はまたあるけど) Instantiate(Resources.Losd<GameObject>(pathes[i]),position,rotation); みたいなやり方もあるけどね。その場合Resourcesってフォルダに prefabを置いておく、とかの約束事はある。 インスペクタで配置する、とかもUnity使ってないと意味不明なんで まぁとりあえずチュートリアルやってみて、って感じではあります。
114 名前:デフォルトの名無しさん [2015/03/31(火) 20:30:11.03 ID:FZhIJWR5.net] idを降るにもランダムで取り出すにもUnity必要ねーんだよ。 何が解らないのか解ってんの?
115 名前:デフォルトの名無しさん mailto:sage [2015/03/31(火) 21:35:52.69 ID:p39Sv7yq.net] >>112 ありがとうございます。 できましたたたたた!
116 名前:デフォルトの名無しさん [2015/04/01(水) 10:44:09.59 ID:SOMpR2yO.net] 初心者のくせにレベル高い質問する奴が多くて凹む 俺なんてもう3年やってるのに未だにデリゲートがわからないわ
117 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 11:14:15.35 ID:1gRtJvyV.net] デリゲートってよくわからないけども、 配達してくれる門のことでしょ?
118 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 13:30:47.74 ID:97llw635.net] if (!xxxxx){ このxxxxx変数の頭に付いてる!はどういった意味なのでしょうか?
119 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 13:37:04.21 ID:uYs13Xxh.net] ! は否定演算子。Boolean型につく。trueならfalseに、falseならtrueに。
120 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 13:40:03.75 ID:97llw635.net] そうだったんですね。 ありがとうございます。
121 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 15:39:21.86 ID:w3sSKfcl.net] そのレベルでいちいち質問してるようじゃ前途多難だなw 煽り抜きの真面目な話
122 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 17:19:12.96 ID:uYs13Xxh.net] Cはおろかjavascriptも見たことないってことだからなぁ
123 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 17:32:30.70 ID:wuQ+3DlS.net] >>117 いちど演算子一通りちゃんと勉強しなおした方がいいマジで
124 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 23:00:59.02 ID:/C37Nzx7.net] Boolean型 そんな型があることを初めて知った
125 名前:デフォルトの名無しさん mailto:sage [2015/04/01(水) 23:08:37.14 ID:0S/G9O5Z.net] 最近プログラム始めました的な人なら仕方ない
126 名前:デフォルトの名無しさん mailto:sage [2015/04/02(木) 10:37:00.56 ID:AeXs8juk.net] boolがあるのにわざわざBooleanを追加した理由ってあるの?
127 名前:デフォルトの名無しさん mailto:sage [2015/04/02(木) 10:52:55.82 ID:phMPzoKJ.net] System.Boolean → .net frameworkの型 bool → C#言語の組み込み型 >bool キーワードは、System.Boolean のエイリアスです。
128 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 19:02:33.95 ID:muAurvJ7.net] MemoryStreamの扱い方について教えていただけないでしょうか。 次のようにMemoryStreamを宣言した場合 配列のように各MemoryStream(m1〜3)を格納出来ましたが 最初に宣言だけして後から格納するにはどうしたら良いでしょうか。 MemoryStream[] Ms = { m1, m2, m3 }; 合っているかどうかわからないのですが、次のようには 宣言できても、後から格納が出来ず悩んでいます。 MemoryStream[] Ms = new MemoryStream[]{};
129 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 19:52:25.48 ID:JflSpfIv.net] MemoryStream云々じゃなくて クラス配列は作成しただけだと中身がnullだから
130 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 19:55:19.03 ID:rgIwRDB+.net] >>127 >MemoryStream[] Ms = new MemoryStream[]{}; 長さ0の配列確保してるから格納できないのは当たり前。
131 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 19:55:45.64 ID:JflSpfIv.net] そこまで高度な話ですらなかった newしてる配列で長さ指定してないから空配列になってるだけじゃねえか
132 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 20:48:16.74 ID:z3znbzKC.net] >>127 var mss = new MemoryStream [3]; mss[0] = m1; mss[1] = m2 ; mss[2] = m3;
133 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 20:56:17.12 ID:muAurvJ7.net] なるほど!!自分はアホでした・・・ 本当にありがとうございました!!
134 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 21:26:33.93 ID:Y/S0Zj5n.net] pdbファイルはデバッグ時にどのように役立っているのでしょうか
135 名前:デフォルトの名無しさん [2015/04/03(金) 21:27:25.80 ID:bzwtJx8O.net] Listの内部実装ってどうなってるんですか? 適当なキャパの配列を内部で持って、 addされたindex以上のは取得できないようにしてる感じでしょうか?
136 名前:デフォルトの名無しさん mailto:sage [2015/04/03(金) 21:34:44.85 ID:1XPpXi9x.net] >>133 変数の名前や、ILの命令がソースコードのどこに対応するかなど コンパイルによって失われてしまう情報を持っている >>134 そう 追加するたびに配列作り直してたら効率悪いので 内部の配列が溢れると倍々ゲームで配列を拡大する リストのサイズは配列のサイズとは別に仮想的な値として持っていて、 インデクサの中で インデックス < サイズ であることをチェックしてる
137 名前:デフォルトの名無しさん [2015/04/04(土) 00:59:18.35 ID:0jqle4n2.net] >>135 ありがとうございます。 c#の基本機能を極めてしまったので、更に深い知識を得たくて。 ところでなぜ、内部実装を知っているんですか? .netで用意されているクラスなど覗いても 実装まで見れませんよね? また、ちょくちょくスレの方々が例えばスタックとか
138 名前:qープとかどーのこーの言ってるんですが、そういう知識はどこで得たらいいんでしょう? 参考書読んでもそんな言葉は一言も出てこなくて。 [] [ここ壊れてます]
139 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 01:27:38.82 ID:QQ0bNHZo.net] .NetFrameworkはオープンソースだよ
140 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 01:36:14.76 ID:iZ1TokMe.net] >>136 スタックだのヒープだのはデータ構造の名前。 そんなご大層なものじゃないからアホじゃなきゃググれば30分で両方理解できる。
141 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 05:50:33.63 ID:nyOh/zuP.net] >ヒープだのはデータ構造の名前 へー
142 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 08:14:03.67 ID:9MLdMtB3.net] referencesource.microsoft.com/ これテンプレに入ってないんだな ネイティブ読んでる奴以外は実装が分かるよ
143 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 10:01:48.66 ID:420of61P.net] C# プログラミングリファレンス ◆スタックとヒープ https://msdn.microsoft.com/ja-jp/library/cc406736.aspx
144 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 11:03:33.41 ID:PeaowgPm.net] >>136 スタック、ヒープってのは自分でメモリー管理するc言語の本には出てる。 c#の本だと構造体、クラスあたりの説明にちょこっと出てくるくらいかな。
145 名前:デフォルトの名無しさん [2015/04/04(土) 12:26:14.95 ID:58QdE54y.net] ほっぺたバンバンスタックスタック おしりバンバンヒープヒープ アウアウアゥッー!!1!
146 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 12:32:52.33 ID:pfd5O7mf.net] >>141 そのヒープは>>138 のヒープとは違うヒープだろ 区別がついてない?
147 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 14:56:52.84 ID:XlefrRJp.net] スタックもヒープもメモリ領域の用語とデータ構造の用語の両方で使用されるので 133の見たレスがどちらだったのかは不明。
148 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 17:50:27.11 ID:HfZ/zp/8.net] 明らかにメモリの話と思われる
149 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 19:16:35.42 ID:l5USRqeg.net] 美しい人生よ 限りない喜びよ この胸のときめきを あなたに
150 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 19:54:57.14 ID:G/mZHSfw.net] >>145 どっちも糞も同じ物だって。 スタックについては言うまでもないと思うが、ヒープだって貸し出すメモリーを ヒープで管理するからヒープでしょ。違うの?
151 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 20:02:17.58 ID:JKQhG6t4.net] >>147 愛のメモリーの話と思われる
152 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 20:22:04.15 ID:vicBGV37.net] データ構造を含めた管理方法の話と OSが(その方法で)管理してる領域の使い方の話 同じ話ではないので、どっちの話かちゃんと区別して下さい
153 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 20:26:11.00 ID:Ud1vHqFT.net] >>148 ヒープで管理するからヒープメモリだというソースは?
154 名前:デフォルトの名無しさん mailto:sage [2015/04/04(土) 22:52:11.93 ID:PeaowgPm.net] あなたにあげる、あったかいんだから
155 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 01:03:26.98 ID:MMhMc3sY.net] String と stringの違いはなんでしょうか?どう使いわけるのですか?
156 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 01:13:21.04 ID:CUClbhMi.net] >>153 わざとやってないか?w>>125
157 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 01:40:29.52 ID:X2BYrh95.net] varの存在意義がわからない…orz
158 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 02:12:28.83 ID:dDi9RE1B.net] てかデフォで型推理>変換まで自動化すべきだよね 明示的に書いたときだけそっち優先でなんの問題があるのか
159 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 05:42:15.21 ID:rnU7gpAt.net] 存在意義が分からないと何もできない奴を粛正して回る方が先 生きるのにも向いてないから、この世から解放してやる必要がある
160 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 08:11:03.64 ID:KZ+Fa3I0.net] >>155 linqやってみれば? varが無ければlinqなんてやってられないよ
161 名前:デフォルトの名無しさん [2015/04/05(日) 09:57:13.71 ID:oXAovg9x.net] varなかったら1ヶ月で一日分ぐらい時間ロスするだろ
162 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 09:58
] [ここ壊れてます]
163 名前::11.03 ID:850UAxcu.net mailto: linqに限らず変数宣言で型書くの面倒だろ? [] [ここ壊れてます]
164 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 10:27:03.47 ID:ITW+JsH9.net] >>155 馬鹿長いクラス名のヤツがvarだとスッキリ書ける。
165 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 10:49:59.34 ID:Hju6Pfi4.net] >>159 さすがにそこまでコードをタイプしてる時間の割合が開発作業の多くを占めるというのは やり方か職場に問題がある
166 名前:デフォルトの名無しさん [2015/04/05(日) 14:18:23.58 ID:Qojgmlj4.net] とはいえC#では強力なIDEのおかげでvarの利用によるメリットは薄れる傾向にあると思われる
167 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 14:25:07.45 ID:kIv1b/v6.net] もともと >>158 が言ってる理由で作られたんじゃなかったっけ。 自分は並べて変数宣言するときに見やすくなるから使うこと多いんだけど。
168 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 18:28:32.68 ID:WDwqsM6E.net] >>163 入力は IDE で楽になったけど、var のあるなしでコードの見易さが全然違うよ
169 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 19:08:34.59 ID:xq3Tbw2G.net] 下みたいな事をしたいです。 どうしたらいいでしょうか? class Oya { ... class KoA : Oya { ... class KoB : Oya { ... --- class Test { public IEnumerable<KoA> AAA { get... } public IEnumerable<KoB> BBB { get... } public IEnumerable<Oya> OOO { get { this.AAAとthis.BBBをくっ付けたい。←これがやりたいこと! } }
170 名前:デフォルトの名無しさん [2015/04/05(日) 19:22:50.56 ID:Qojgmlj4.net] return AAA.Concat(BBB); //varを使ってみたかった foreach(var koa in AAA) yield return koa; foreach(var kob in BBB) yield return kob;
171 名前:デフォルトの名無しさん mailto:sage [2015/04/05(日) 19:24:07.67 ID:yZ2P911Q.net] linq 結合 とか linq つなげる とかでググれば出てきそうなもんだが concat
172 名前:デフォルトの名無しさん mailto:sage [2015/04/06(月) 22:48:02.56 ID:/TOJAy2n.net] 式木を約分するフリーのライブラリとかありませんか? Expression<Func<int, int>> ex = x => x / x; を x => 1 に Expression<Func<double, double>> ex = x => Math.Tan(x) / Math.Sin(x) * Math.Cos(x); を x => 1.0 に約分してくれるようなものです
173 名前:デフォルトの名無しさん mailto:sage [2015/04/06(月) 23:17:20.28 ID:2OkzYB/B.net] LinQとかラムダとか修行用のサイトありますか?
174 名前:デフォルトの名無しさん mailto:sage [2015/04/06(月) 23:20:52.04 ID:7ScfZwT0.net] 徹底的にハードな
175 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 08:10:27.45 ID:qktNI4KL.net] まず宇宙船を作ります
176 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 08:21:24.60 ID:i2VysPJZ.net] 修行用で良かったのは未確認なんたら
177 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 13:02:48.89 ID:W5P0BmT+.net] >>173 ありがとうございます。
178 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 14:01:15.57 ID:JncqmOow.net] >>169 数式文字列に変換してMaximaに丸投げ
179 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 22:04:32.95 ID:mIn1sIzy.net] >>175 おお!こんなのがあったのですね! 素晴らしいです!助かりました
180 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 23:00:27.85 ID:jNIjIDyq.net] データタイム型で取り出した日時データをDateGridviewに出力する際、string型に変換せず、そのまま日時データの性質を持たせて出力することはできませんか?
181 名前:デフォルトの名無しさん mailto:sage [2015/04/07(火) 23:32:05.01 ID:xSM6sG75.net] WPFというかXAML使えば
182 名前:デフォルトの名無しさん [2015/04/07(火) 23:32:35.89 ID:r1bOWFW1.net] icaclsで取得したデータをC#で見やすく加工したいのですが、 以下のように、フォルダパスとユーザ情報が一行に表示されており、 見難くて困っております。 C:\Program Files NT SERVICE\TrustedInstaller:(F) 再帰的に、以下のように加工する方法はあるでしょうか? C:\Program Files NT SERVICE\TrustedInstaller:(F) 区切りがスペースである時点で、解決は望み薄かと思いますが、 よろしくお願いします。
183 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 08:15:48.75 ID:o76YjVnN.net] そんなコマンドあるの初めて知ったので試してみたけど、 2行目以降、インデントされてるからその開始位置を1行目に適用したらいいんじゃない? 2行以上表示されるファイル/フォルダじゃないとダメだけど
184 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 08:40:02.89 ID:KM862bWm.net] >>178 は?
185 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 09:14:09.25 ID:dGXcCm+u.net] >>181 WPFならUIにどんなオブジェクトでも持たせられ、表示方法はDataTemplateで自由自在。
186 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 09:15:46.89 ID:Vs/ZCfgh.net] へ?
187 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 13:53:35.14 ID:b4lzJxfB.net] >>177 そのようなDataGridViewColumnとDataGridViewCellを作ればよい
188 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 14:26:53.14 ID:KM862bWm.net] >>184 その作り方を聞いてるんじゃないの?
189 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 16:36:33.11 ID:DdfnKxD/.net] ソフトにホットキーを登録する方法を調べていたところ下記のコードで登録できるようですが ttp://smdn.jp/programming/tips/activate_window_by_hotkey/ これは予め数種類の動作を用意した設定フォームなどから 対応するホットキーをユーザ側で自由に設定するなどということは可能なのでしょうか?
190 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 18:00:13.85 ID:dsfuUZsQ.net] 可能です
191 名前:デフォルトの名無しさん mailto:sage [2015/04/08(水) 18:19:20.60 ID:DdfnKxD/.net] ありがとうございます。
192 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 12:10:34.50 ID:y3dmdorc.net] デバッグで動作中に配列にカーソルを合わせると中の値を見ることが出来て、 右クリックで配列の中の一つの値をコピーしてメモ帳等に貼り付けることは出来ましたが、 配列の中身を全て一括してコピーする様なことって出来ますか?
193 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 14:27:07.51 ID:LaD8e8U9.net] listViewの指定のカラムにサブアイテムを追加する方法を教えて下さい。 カラム0には初めから項目が追加されています。 カラム0 カラム1 カラム2 項目0 項目1 項目2 ListViewItem item = new ListViewItem(); if (item.Selected) { item.SubItems.Add(追加項目); } とすると、選択項目のカラム1にサブアイテムが追加されてしまいますが、 カラム1には何も追加せずカラム2だけにアイテム追加するにはどうすればよいでしょうか。
194 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 17:55:07.19 ID:3KIThUPC.net] そのコードでは何も起きないと思うが。。 item.SubItems.Add((string)null); item.SubItems.Add(追加項目);
195 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 18:57:39.19 ID:jbEL90kz.net] >>189 イミディエイトウィンドウでstring.Join(",", arr)とか
196 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 19:24:36.73 ID:y3dmdorc.net] >>192 見ることが出来ました! ありがとうございます
197 名前:デフォルトの名無しさん mailto:sage [2015/04/09(木) 20:18:39.40 ID:LaD8e8U9.net] >>191 上手く行きました。どうもありがとうございました。
198 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 04:38:08.62 ID:WjVyXuhP.net] stringにShift-JISの文字列を入れて(もちろん8ビットコードは上位0です) byte[] sb = Encoding.GetEncoding("Shift-JIS").GetBytes(res); byte[] ub = Encoding.Convert(Encoding.GetEncoding("Shift-JIS"), Encoding.Unicode, sb); string str = Encoding.Unicode.GetString(ub); textBox1.AppendText(str); とやったのですがどうしてもTextBoxの文字が化けてしまいます これを化けずに表示するにはどうすればいいのでしょうか?
199 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 06:10:15.82 ID:2NJz6esb.net] >>195 C#はパールじゃない >stringにShift-JISの文字列を入れ などということが出来ないことを まず理解します
200 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:28:56.12 ID:WjVyXuhP.net] >>196 レスありがとうございます <
201 名前:br> 実は res = await client.GetStringAsync(uri); というのを実験してて、このページがたまたまShift-JISでエンコードされているため resというstringにShift-JISで入って行ってしまうのです Clipboard.SetText(res); でクリップボードにコピーしてFree Clipboard Viewewで見ても(Windows8.1なので) ちゃんとShift-JISで入っているのが分かります で、このままTextBoxに入れても当然化けるので、何とかUnicodeに変換したいと 思い、>>195 のようなコードを何通りか試してみたのですが、どうしても駄目です unsafeを使って8バイト部分を切り詰めてから変換しても駄目でした このままだと、Shifit-JISで書かれたページがC#で扱えない事になってしまうので困っています [] [ここ壊れてます]
202 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:33:12.28 ID:N1524vgj.net] いや何でStringにShift-JISを入れる(確実にその時点で壊れる)のが前提なんだ WebClientに文字コードを指定するか、GetStringじゃなくて生データで受けてからEncodingで変換しろ
203 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:39:39.96 ID:2NJz6esb.net] byte[] sjisData =〜; //オリジナルのSJISデータ var s = System.Text.Encoding.GetEncoding(932).GetString(sjisData); textBox1.Text = s; これ以上に複雑な処理が要るとは思えないのだが
204 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:44:25.90 ID:WjVyXuhP.net] >>198 それでやってみます しかしどこかにアクセスする前にそのページのコードを知らなければならない前提になって しまいますよね? C#でブラウザとか巡回ソフトを作る時に困るような気がしませんか? >>199 それもやってみたけど化けるのです TextBoxに入れた時点で化けるのかな?
205 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:48:02.02 ID:N1524vgj.net] >>200 WebClient.GetStringが返すのはそのままのデータではなく.NETの内部表現に変換された文字列 生データが欲しければOpenReadやDownloadDataなどを使う
206 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:55:21.61 ID:2NJz6esb.net] >>200 やりたいことはわかった。 ストリームから読み込んだ内容によって「932」のところを調整する。 ideone.com/THGhsl
207 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 13:08:01.63 ID:WjVyXuhP.net] >>201 asyncと合わせて使う方法が分かりません >>202
208 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 13:08:20.25 ID:WjVyXuhP.net] 間違えて書き込んでしまいました >>202 ありがとうございます 試してみます
209 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 13:09:42.07 ID:zkEb8/z0.net] >>203 >>197 はSystem.Net.WebCllent.GetXxxxTaskAsyncだよ AsyncでなくTaskAsyncのほう
210 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 13:10:36.81 ID:zkEb8/z0.net] 意味不明な書き込みした 忘れて…
211 名前:デフォルトの名無しさん [2015/04/11(土) 19:51:34.35 ID:5aZfU8Xj.net] 引数や戻り値を無視したデリゲートが欲しいのですがどうすればいいでしょうか? ただし、ラムダなど匿名関数にして包んでしまうと Method.Targetがnullになってしまうため不可です