[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/01 22:33 / Filesize : 298 KB / Number-of Response : 1019
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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



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

858 名前:デフォルトの名無しさん (ワッチョイ 0f7b-liqg) mailto:sage [2017/03/03(金) 23:22:28.28 ID:VmWbxx1t0.net]
>>837
HTMLなら、表かな?

Grid-View みたいなもの?

859 名前:デフォルトの名無しさん (RU 0H7f-YS1u) mailto:sage [2017/03/04(土) 00:38:07.38 ID:WtTkhvloH.net]
あーあー
テストテスト

860 名前:デフォルトの名無しさん (RU 0H7f-YS1u) mailto:sage [2017/03/04(土) 00:40:41.72 ID:WtTkhvloH.net]
テスト2

861 名前:デフォルトの名無しさん (ワッチョイ 7b14-YS1u) mailto:sage [2017/03/04(土) 00:42:29.33 ID:SJvxZRgO0.net]
テスト3

862 名前:デフォルトの名無しさん (ワッチョイ 6b3c-NqFr) mailto:sage [2017/03/04(土) 04:10:31.34 ID:ymzArQkK0.net]
RUって海外鯖?非国民?

863 名前:デフォルトの名無しさん (ワッチョイ 3b42-T7IB) [2017/03/04(土) 12:04:06.46 ID:rEOlgOeo0.net]
>>819
印刷プレビュー付きテキストエディタあたりで大丈夫だろ
メモ帳に印刷プレビューを付けたやつ
10Mバイト程度のテキストの印刷プレビューでも固まらないようにな

864 名前:デフォルトの名無しさん (ワッチョイ ef5b-EkCO) mailto:sage [2017/03/04(土) 13:08:14.58 ID:aE/wnzST0.net]
>>848
そんなの意味あるの?
どっかに転がってるソース提出できるじゃん。

オレは始めたばかりだから初心者だけど、どんな言語でも少し喋ればスキルなんてバレバレだろ。
どんなものを作ったかと苦労した点とか聞けばだいたい分かるもんだろ。

865 名前:デフォルトの名無しさん (ワッチョイ cb34-PBd5) mailto:sage [2017/03/04(土) 13:18:59.82 ID:svzWwCAT0.net]
githubでスター100個とか200個ついたリポジトリ抱えてれば
面接に言ったとき向こうからおべっか使ってくれるよ

866 名前:デフォルトの名無しさん (アウアウオー Sabf-rrQM) mailto:sage [2017/03/04(土) 13:20:00.59 ID:nGVyMKq0a.net]
その程度しかできないんだな。そんなにできるんだな
事前の目安になるからどんなんでもいいんだよ。「事前の」目安な



867 名前:デフォルトの名無しさん (ワッチョイ eb0d-wJyW) [2017/03/04(土) 13:41:15.75 ID:3ybLjFYo0.net]
WebHeaderCollectionから"Set-Cookie"をすべて取得したいのですが、どうすればいいでしょうか?
GetValues()はカンマで区切られる為使い物になりませんでした

868 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/04(土) 16:45:35.72 ID:pgVcOV4B0.net]
Proxy併用してCookieも変えながらエロ画像DLするアプリだとどんな評価されるんだろうか

869 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/04(土) 16:48:03.55 ID:pgVcOV4B0.net]
>>852
自分で区切られているのを好きな形にするメソッドを作るとか

870 名前:デフォルトの名無しさん (ワッチョイ 1f30-PBd5) mailto:sage [2017/03/04(土) 18:32:13.09 ID:zFoXIyA10.net]
私が17歳だった頃くらいの技術力かなって評価する

871 名前:デフォルトの名無しさん (ササクッテロレ Spef-w/oi) mailto:sage [2017/03/04(土) 19:16:47.62 ID:ePKaLPUep.net]
>>852
GetValues(int)なら分割されないはず

872 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/04(土) 23:00:54.14 ID:nqKolQrS0.net]
サイトを巡回して画像をDLするアプリを作っているのですが、Keep-aliveがtrueの場合
HttpWebRequestなどはstaticな変数、もしくはクラス変数のほうがいいですか?
Keep-aliveがfalseの場合、どちらでもいいですか?

873 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/05(日) 08:23:18.11 ID:ci1fnKDv0.net]
HttpWebResponseで受け取ったCookieを次のHttpWebRequestのCookieにしたいのですがうまくいきません
どこがおかしいのでしょうか?
https://ideone.com/PExQEA

874 名前:デフォルトの名無しさん (ワンミングク MM3f-swil) mailto:sage [2017/03/05(日) 08:45:58.71 ID:iZvzQ0XvM.net]
>>855
わたしゃこの商売60年やってるよ。と続けないと

875 名前:デフォルトの名無しさん (ワッチョイ 1f23-NqFr) mailto:sage [2017/03/05(日) 08:47:51.24 ID:dvtekz6g0.net]
17歳の頃と言えばジャニス・イアンだな
https://www.youtube.com/watch?v=k39P2MK6WPo

876 名前:デフォルトの名無しさん (ワッチョイ aba7-bSi4) mailto:sage [2017/03/05(日) 10:56:08.64 ID:2PYsxDr30.net]
17位の時は、モデムを海外サーバーにつなぐ、0990のソフトつくってた



877 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/05(日) 11:28:37.36 ID:ci1fnKDv0.net]
今日は誰もいないんですか?
できれば回答がほしいんですけど・・・

878 名前:デフォルトの名無しさん (アークセー Sxef-CqFM) mailto:sage [2017/03/05(日) 11:31:38.07 ID:d0KLgtk9x.net]
>>861
今は何位?

879 名前:デフォルトの名無しさん (ワッチョイ 3bdc-0QZk) mailto:sage [2017/03/05(日) 11:50:01.18 ID:4Mp9Np6+0.net]
>>862
>>858の質問の意図が俺には理解できない
何をしようとしてどう考えてそのコードを書いてどういう結果を期待していて実際の結果が期待とどう違っているのかを具体的に書いて

880 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/05(日) 12:12:52.85 ID:ci1fnKDv0.net]
>>858についてですが、すいません、自己解決しました
単なるコードミスでした。あと>>857についてお願いします

881 名前:デフォルトの名無しさん (オッペケ Sref-udCm) mailto:sage [2017/03/05(日) 12:16:11.13 ID:oDjd797Or.net]
>>865
せめてどう解決したのかくらい書きなよ?

882 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/05(日) 12:37:10.11 ID:ci1fnKDv0.net]
すいません
やりたいことは>>858
受信したCookieを保存するList<Cookie>型のreceivedCookieをwhile文の中で宣言していて
次にリクエストを送信する場合、受信したCookieは空にしてしまっていたのです

883 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/05(日) 12:48:02.23 ID:u6nsQtE2a.net]
森高千里を連想するとオッサンで、南沙織を連想するとジジイか

884 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/05(日) 12:52:13.20 ID:4N1+21XT0.net]
コートの上から抱きしめといてちょっと太ったなんて聞くやつってどうかと思う

885 名前:デフォルトの名無しさん (ワッチョイ ef59-2BvX) mailto:sage [2017/03/05(日) 13:29:08.38 ID:sGCSwFPI0.net]
netstatすればkeepaliveかどうかわかると思う

886 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/05(日) 18:00:28.29 ID:NskbqDfx0.net]
既存のList<T>を継承してXmlシリアライズ・デシリアライズ機能をつけたものを使っていたのですが
拡張メソッドで継承することなく機能をつけようとしてなぜかInvalidOperationExceptionが投げられるようになりました
どうしたことかもともと継承していたやつまでInvalidOperationExceptionを吐くようになってしまいました
InnerExceptionでは「<elem xmlns=''> は指定できません。」と出ます、自作ではなくC#のXMLシリアライザを使用して吐き出したものです
どなたか解決方法教えてください

public class XmlData<Type> { public Type[] data; }

public static void LoadXml<Type>(this List<Type> list, string path)
{
list.Clear();

XmlData<Type> xmldata = null;

XmlDocument xdoc = new System.Xml.XmlDocument();
XmlSerializer xml = new System.Xml.Serialization.XmlSerializer(typeof(XmlData<Type>));

xdoc.PreserveWhitespace = true;
xdoc.Load(path);

XmlNodeReader xnr = new System.Xml.XmlNodeReader(xdoc.DocumentElement);

xmldata = (XmlData<Type>)xml.Deserialize(xnr);

for (int i = 0; i < xmldata.data.Length; i++)
list.Add(xmldata.data[i]);
}



887 名前:デフォルトの名無しさん (ワッチョイ 1f17-Mt2S) mailto:sage [2017/03/05(日) 20:31:41.58 ID:8jeOdUNR0.net]
呼び出し側ではどういう風に呼び出してる?
Type で指定する型によっては InvalidOperationException 例外が発生するようだけど。 ex) System.Type

あと、この例では読み込みだけだけど、書き出しはどういう風に書いてる?
書き出しと読み出しで Type の型が違うなんてないよね。(型が違うとくだんの例外が発生する)

あと dobon だけど、このあたりを見てみるとか。
dobon.net/vb/dotnet/file/xmlserializer2.html

888 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/06(月) 09:54:44.28 ID:MVjKwV/p0.net]
以下のとおりになります
https://ideone.com/RexR1Z
最初はListクラスを継承したListExクラスでXmlシリアライズして、そのシリアライズしたものを拡張メソッドLoadXmlで読もうとしています
シリアライズするクラスは同じものです

889 名前:デフォルトの名無しさん (ワッチョイ 4fcb-re10) mailto:sage [2017/03/06(月) 10:55:10.06 ID:iAI6G3090.net]
シリアナライク
オシリアラエズ

890 名前:デフォルトの名無しさん (ワッチョイ 0f7b-BJNc) mailto:sage [2017/03/06(月) 13:28:57.02 ID:xh0zMCOO0.net]
c#でjavascript(JS)を使いたいんですが、
ローカルフォルダにMainというHTMLに以下のコードを記載
https://dotnetfiddle.net/N2FfFc

C#のコードの方に
https://dotnetfiddle.net/ZHWTtH

JSの関数 test を実行しているはずが、nullとなってしまい、返り値を取得できないのですが、何かが間違っているのでしょうか?

891 名前:デフォルトの名無しさん (アウアウオー Sabf-rrQM) mailto:sage [2017/03/06(月) 15:35:25.99 ID:SM9wIIjZa.net]
documentcompleted待ってないからとか?

892 名前:872 (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/06(月) 15:57:21.11 ID:MVjKwV/p0.net]
すいません、そもそもジェネリッククラスのシリアライズ化ってできるんですか?
Listが持っているものをジェネリックメソッドを使用してシリアライズ化したいのですが・・・

893 名前:デフォルトの名無しさん (ワッチョイ bb19-/EJX) mailto:sage [2017/03/06(月) 16:13:30.95 ID:3WR0U+Fi0.net]
できる
XmlDataとかいうクラスを作る必要はない T[]を使えば良い
あと、型引数の名前にTypeはSystem.TypeとごっちゃになるからTだけ使う

894 名前:872 (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/06(月) 16:41:02.74 ID:MVjKwV/p0.net]
すいませんジェネリック使いながら「T」の使い方がわからないのです
調べても出てこないですし、なんとなくTypeと書いていたのです
何か違いがあるのでしょうか?

895 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/06(月) 17:26:25.11 ID:SfExdTzoa.net]
ない(あるわけないw)けど、型パラメータが一つしかないならTにするのが
暗黙の慣習みたいなものだし、それで可読性が落ちる理由もないし、
あえて変な自己主張してもいいことないよね

896 名前:872 (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/06(月) 21:51:17.87 ID:ACVl84t/0.net]
>>878
ありがとうございます、仰るとおりにしたらできました



897 名前:デフォルトの名無しさん (ワンミングク MM3f-prdN) mailto:sage [2017/03/06(月) 22:21:32.75 ID:AYI7ZDZ8M.net]
TSelectorとか意味わかる名前にしたほうがいいだろ
コレクションの型パラメータみたいに本当に何でもいいなら構わんけど
何でもかんでもT, Uじゃ不親切

898 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/07(火) 00:00:53.81 ID:iPWuig5na.net]
そんなケースは皆無とは言わないけどあんまりないと思うよw

899 名前:デフォルトの名無しさん (ワッチョイ 0f42-wc60) mailto:sage [2017/03/07(火) 00:57:34.30 ID:+YV7asI40.net]
型の意味書かなきゃならんってことは何か設計が微妙なんじゃないかって気がする

900 名前:デフォルトの名無しさん (ワッチョイ 1f90-Mt2S) mailto:sage [2017/03/07(火) 00:59:34.58 ID:GXNElMqV0.net]
静的クラスのデストラクターは定義できないとのことですが、デストラクターの内容を書いたメソッドを呼ぶしかないのでしょうか?

901 名前:872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 01:52:20.69 ID:ruRUpvB50.net]
また質問させてください
Listクラス以外の自作クラスのシリアライズも拡張メソッドで行いたいと思って以下のようなコードを書いたのですがエラーも例外も吐かないのに読み込めません
public static void LoadXml<T>(this T obj, string path)
{
XmlDocument xdoc = new XmlDocument();
XmlSerializer xml = new XmlSerializer(typeof(T));

xdoc.Load(path);

XmlNodeReader xnr = new XmlNodeReader(xdoc.DocumentElement);

obj = (T)xml.Deserialize(xnr);
}

これがデシリアライズするクラスの例です
public class MyClass
{ public string value1, value2; }

902 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/07(火) 02:25:06.04 ID:iPWuig5na.net]
>>885
そもそもデストラクターそのものがあくまでフェイルセーフ的な物のはずだと思うんですが...
っていうか静的クラスのデストラクタって何だかなあw

Windows FormアプリならApplicationのApplicationExitイベントに紐づけするとか、確かWPFにも
似たようなイベントがあったと思ったけど、こういうの使うとイベントハンドラが呼び出される順序で
ハマったりするんだよなあ

903 名前:デフォルトの名無しさん (ワッチョイ 8bc0-NqFr) mailto:sage [2017/03/07(火) 02:28:11.35 ID:X44GHN6S0.net]
>>885
リソース破棄を明示したいならそもそも静的クラスにすべきじゃないかと

904 名前:デフォルトの名無しさん (ワッチョイ ef4a-m4jB) mailto:sage [2017/03/07(火) 05:57:46.86 ID:l3aZYBuT0.net]
質問させてください
「変数に値を設定する拡張メソッド」を作りたいのですが
エラーも例外も儚いのにうまくいきません

public static void SetValue<T>(this T obj, T value>
{ obj = value; }

これが使用例です
int i = 0;
i.SetValue(3);
Console.WriteLine(i);

905 名前:デフォルトの名無しさん (ワッチョイ 6bd4-Mt2S) mailto:sage [2017/03/07(火) 06:47:30.83 ID:WbHpL/G50.net]
それ拡張メソッドじゃなくても無理だよね?
そもそもそんな意味不明なメソッドを作りたいというのがおかしい

906 名前:デフォルトの名無しさん (ワンミングク MM3f-prdN) mailto:sage [2017/03/07(火) 07:54:40.64 ID:SGq4g/IKM.net]
VBならできるよ



907 名前:デフォルトの名無しさん (ブーイモ MM3f-ZTLi) mailto:sage [2017/03/07(火) 08:29:24.98 ID:SQQuUM2SM.net]
儚いなあ

908 名前:デフォルトの名無しさん (ワッチョイ bb19-/EJX) mailto:sage [2017/03/07(火) 09:38:09.03 ID:1NFra9UW0.net]
>>886
ファイルの中身がTに合ってないんじゃねーの

909 名前:デフォルトの名無しさん (ブーイモ MM3f-fL7a) mailto:sage [2017/03/07(火) 10:26:04.21 ID:IHsSpNAMM.net]
>>889
参照渡しと拡張メソッド(this)が共存しないので無理。素直に代入したら?

910 名前:872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 11:05:38.59 ID:ruRUpvB50.net]
>>893
ファイルの中身が違っていたら例外吐くと思っていたのですが違うのですか?

911 名前:>>874 (ワッチョイ 0f7b-BJNc) mailto:sage [2017/03/07(火) 11:56:02.27 ID:S+1e7jR70.net]
>>876
おっしゃる通り、ページ読み込み完了していないので取得できていなかったみたいです。
確かにページ読み込みが完了してないとスプリクト使えないですよね

912 名前:デフォルトの名無しさん (ワッチョイ 3b9f-m4jB) mailto:sage [2017/03/07(火) 11:59:21.35 ID:FPiytoRz0.net]
SQLAzure databaseにEntity framework6と.NET Framework4.6.1を利用して接続しています。
アプリ実行時、初回のデータ読み込みに10秒ほどかかるのですが解決方法はないでしょうか?
同じ処理をlocalDBに接続をして試すと3秒ほどです。

テーブル数は1、レコード数も1です。

913 名前:デフォルトの名無しさん (ワンミングク MM3f-PlVy) mailto:sage [2017/03/07(火) 13:56:31.38 ID:3EZIVbrWM.net]
EFを使わない

914 名前:デフォルトの名無しさん (ワッチョイ 8bc0-NqFr) mailto:sage [2017/03/07(火) 19:06:34.88 ID:X44GHN6S0.net]
localDBでもレコード1行読み込むのに3秒とか何かがおかしいような
プロファイラで何がネックになっているか調べてみたら?

915 名前:デフォルトの名無しさん (ブーイモ MMaf-d4C0) mailto:sage [2017/03/07(火) 20:10:26.97 ID:xCLX0I7rM.net]
>>897
ORMはサーバーで使うもんだよ

916 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 20:38:41.72 ID:ruRUpvB50.net]
誰か教えてください
最近この人が少ないですね



917 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 20:39:36.79 ID:ruRUpvB50.net]
×この人が少ないですね
○ここの人が少ないですね

918 名前:デフォルトの名無しさん (ブーイモ MM3f-fL7a) mailto:sage [2017/03/07(火) 21:17:41.73 ID:IHsSpNAMM.net]
>>886
>>889 と同じ理由 []
[ここ壊れてます]

920 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 22:01:28.13 ID:ruRUpvB50.net]
>>903
intが参照渡ししていないので>>889がダメな理由はなんとなくわかります
でもクラスのインスタンスは参照型だと思うのですが、ひょっとしてジェネリックだとそういう制約があるんですか?
シリアライズできてもデシリアライズはできないみたいですが・・・

921 名前:デフォルトの名無しさん (ブーイモ MM3f-fL7a) mailto:sage [2017/03/07(火) 22:04:38.86 ID:IHsSpNAMM.net]
>>904
参照型の値渡しになってる。
参照渡ししたければrefかoutが必要。

922 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/07(火) 22:32:22.55 ID:ruRUpvB50.net]
ありがとうございます
ジェネリックでも配列やListはシリアライズできて、クラスのインスタンスはシリアル化できないのはなんか腑に落ちませんがなんとな納得してみます

923 名前:デフォルトの名無しさん (ワッチョイ dbbb-BJNc) mailto:sage [2017/03/07(火) 22:36:23.03 ID:hjB1k2kx0.net]
iniファイルがお似合い。

924 名前:デフォルトの名無しさん (スププ Sd3f-GcmM) mailto:sage [2017/03/07(火) 22:56:00.79 ID:JT5OyNStd.net]
>>907
iniファイルは標準では非サポートだから初心者向きではないと思います

925 名前:デフォルトの名無しさん (ワッチョイ dbbb-BJNc) mailto:sage [2017/03/07(火) 23:44:41.25 ID:hjB1k2kx0.net]
iniファイルすらサポートが必要なレベルなのか。

926 名前:デフォルトの名無しさん (スププ Sd3f-GcmM) mailto:sage [2017/03/07(火) 23:51:22.65 ID:JT5OyNStd.net]
ここは初心者用スレですけど?



927 名前:デフォルトの名無しさん (ワッチョイ 6b19-pp/g) mailto:sage [2017/03/08(水) 00:04:08.23 ID:nUQhPPyB0.net]
初心者とは言え文字を1行ごとに取り込んでSplit('=')で分割して順番にListにぶち込むだけで取りあえず読み込めるし似た手順で書き込みもできると思う

928 名前:デフォルトの名無しさん (ワッチョイ dbbb-BJNc) mailto:sage [2017/03/08(水) 00:06:07.47 ID:YUr8l1RF0.net]
そうだね。ここは初心者スレだったね。iniファイルの自前で読み書きはレベルが高すぎたね。

929 名前:デフォルトの名無しさん (スププ Sd3f-GcmM) mailto:sage [2017/03/08(水) 00:07:10.07 ID:MhhWeDADd.net]
>>911
値が改行コード入りの文字列の時だってあるんですよ

930 名前:デフォルトの名無しさん (ワッチョイ 0ba1-R7fB) mailto:sage [2017/03/08(水) 00:09:44.28 ID:nYBrtmF60.net]
iniは柔軟すぎて困る

931 名前:デフォルトの名無しさん (ワントンキン MM3f-prdN) mailto:sage [2017/03/08(水) 00:12:34.68 ID:swHBt9geM.net]
iniはサポートされただろ

932 名前:デフォルトの名無しさん (アウアウオー Sabf-rrQM) mailto:sage [2017/03/08(水) 00:12:50.48 ID:+9c4AYMpa.net]
ini推しはC#初心者だろうな

933 名前:デフォルトの名無しさん (ワッチョイ 6b19-pp/g) mailto:sage [2017/03/08(水) 00:35:21.61 ID:nUQhPPyB0.net]
>>913
思いつかなかった
そういやそういう時ってどうやるのが正しいの?
思い返せば自分が似たようなことやった時は書くときに改行コードを<br>に置き換えて一行で読めるようにしてて読み込むメソッドで<br>をEnvironment.NewLineに置換してた
その時はiniじゃなくてcsvだったけど

934 名前:デフォルトの名無しさん (スププ Sd3f-GcmM) mailto:sage [2017/03/08(水) 00:45:02.22 ID:MhhWeDADd.net]
>>917
自分がCSVパーサー作ったときは一文字づつ解析していったよ
“で囲われてるフィールドがあったり、“そのものは““になっていたりするから一文字ずつ読むのが手っ取り早い

935 名前:デフォルトの名無しさん (ワッチョイ 6b19-pp/g) mailto:sage [2017/03/08(水) 00:50:31.95 ID:nUQhPPyB0.net]
なるほど
そういうやり方もあるのかthx

936 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/08(水) 00:55:26.32 ID:DQTGg9gCa.net]
>>906
だーから、(恐らく)シリアライズ/デシリアライズの問題じゃないってばw

インスタンスメソッドだろうが拡張メソッドだろうが、オブジェクトを操作してそのオブジェクトが
入っている変数自身を書き換えようって発想がおかしいのw
自分の首をつかんで自分を持ち上げようとしても無理なのと同じだよww

素直にユーティリティークラスにTを返すメソッドとして実装しましょう。



937 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/08(水) 01:29:06.79 ID:wRk+GbAW0.net]
すいません、どういうことがおかしいのかわからないです
配列やListクラスに拡張メソッドを定義して、その値をどうのこうのするのはおかしいんですか?
拡張メソッドを使用せずに以下のように書くんですか?よくわからないです
obj = LoadXml("C:\\hoge.dat");

938 名前:デフォルトの名無しさん (ワッチョイ 1f23-2BvX) mailto:sage [2017/03/08(水) 01:44:21.45 ID:CceDL3fb0.net]
>>921
thisはさ、拡張メソッドでもインスタンスメソッドでも値渡しされたインスタンス参照なんだよ
だからそれに代入しても引数の参照先が変わるだけ、元には何の影響も与えない、refも併用できないしね
読み取り専用であるため 'this' に割り当てできません、ってのと同じ、メンバに対する操作のみが有効

939 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/08(水) 02:37:50.73 ID:aAsk3kKya.net]
>>921
そんな難しい話じゃないと思うけどなあ...

まあ、どうしても拡張メソッドにこだわるなら、変数を書き換えるなんて
馬鹿な考えは捨てて、デシアライズしたオブジェクトから全部の(あるいは必要な)
プロパティーとフィールドをコピーしたらいい。

例えば、

Interface ICopyable<T>
{
  void CopyTo(T source) ;
}

みたいなインターフェイスを定義して、LoadXml<T>のTはICopyableを実装する制約を
つければいいんじゃないかな。知らんけど

940 名前:デフォルトの名無しさん (ブーイモ MM3f-fL7a) mailto:sage [2017/03/08(水) 05:15:42.09 ID:FUZAuqxsM.net]
>>921
public static void LoadXml<T>(ref T obj, string path)
なら動くんじゃないの?

941 名前:デフォルトの名無しさん (ワッチョイ dbbb-BJNc) mailto:sage [2017/03/08(水) 05:20:34.89 ID:YUr8l1RF0.net]
ref、thisが分からないってきっとポインタの知識がないんだな。

942 名前:デフォルトの名無しさん (ワッチョイ 1f4c-mC6Z) mailto:sage [2017/03/08(水) 07:14:26.58 ID:bhVPr0Ju0.net]
シリアライザでググって、ライブラリに突っ込んだ方が早いはず。
Json.Netとか色々あるし

943 名前:デフォルトの名無しさん (ワンミングク MM3f-PlVy) mailto:sage [2017/03/08(水) 11:02:49.82 ID:75S/ek5tM.net]
>>899
EFなら初回はそんなもの

944 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/08(水) 12:32:26.51 ID:wRk+GbAW0.net]
>>923
どうしても拡張メソッドに拘りたいわけではなくてなぜ書けないのかのほうが知りたいです
足りない頭を端から端まで使っているんですがやっぱりわからないです

たとえばこんな風に書いても16行目18行目20行目では結果が違うのになんでジェネリックになっただけでダメになるのかよくわかりません
https://ideone.com/KGRQGt

ただのint型でもLoadXml、SaveXmlが呼べてしまうので、もし使えたとしてもなんとなくですがあまり推奨されないのかなと感じます

945 名前:デフォルトの名無しさん (ワッチョイ 1f23-2BvX) mailto:sage [2017/03/08(水) 12:59:54.42 ID:CceDL3fb0.net]
>>928
だからジェネリック云々の話じゃないって。そのコードは全てメンバに対する代入でしょ?
クラスが参照型というのは変数が直接の実体ではなくインスタンスへの参照というだけ
ChangeExtensionの_myclassに渡るのはmyclass変数への参照ではなくMyclassインスタンスへの参照
値型だろうが参照型だろうが呼び出し元の変数そのものを変えるならrefかoutか返り値を代入するかだよ

946 名前:デフォルトの名無しさん (ブーイモ MM2f-fL7a) mailto:sage [2017/03/08(水) 15:05:01.86 ID:mEPgtGPAM.net]
>>928
Change()メソッドの中身を

_myclass = new MyClass();
_myclass.value1 = "999";

にしてみ?



947 名前:デフォルトの名無しさん (ワッチョイ dbbb-BJNc) mailto:sage [2017/03/08(水) 18:40:42.04 ID:YUr8l1RF0.net]
一度意味を勘違いした人の知識を訂正するのは容易なことではありません。

948 名前:デフォルトの名無しさん (ワッチョイ ef02-iS6T) mailto:sage [2017/03/08(水) 19:36:09.01 ID:gvo8BpVN0.net]
拡張メソッドはほんとにクラスを拡張してると思ってるんじゃないだろうか

949 名前:デフォルトの名無しさん (アウアウウー Sa2f-G6vc) mailto:sage [2017/03/08(水) 19:55:54.92 ID:LpkYLhbMa.net]
だから、インスタンスメソッドだって自分を参照してる変数を書き換えるなんて
普通はできませんってw

950 名前:>>872 (ワッチョイ ab90-Mt2S) mailto:sage [2017/03/08(水) 20:08:48.74 ID:wRk+GbAW0.net]
>>929
拡張メソッドでthisに指定しているものは触ることはできないけど、this指定のpublicなメンバなら触ることができる
こういった解釈で間違いないですか?

配列は問題なくできますが、それはどういった理由からですか?配列の要素もメンバ扱いなのでしょうか?

951 名前:デフォルトの名無しさん (ワッチョイ aba0-PBd5) mailto:sage [2017/03/08(水) 20:11:40.47 ID:jS0zQn/F0.net]
死ね低脳
畑でも耕してろ

952 名前:デフォルトの名無しさん (ワッチョイ 1f23-2BvX) mailto:sage [2017/03/08(水) 21:17:35.55 ID:CceDL3fb0.net]
>>934
まぁ有り体に言えばそうなんだけど、拡張メソッドとかthisとか、もはやこの際関係ないんだ
まず値型を考える。int i = 0;のとき、変数「i」は4バイトで値0という実体がそのまま入る
次に参照型、Myclass myclass = new Myclass();だと変数myclassには実体へのアドレスが入る

そこまでは理解していると思うけど、メソッドに渡された時、通常はどちらも値渡しなんだよ
値型だと内容が引数にコピーされるのは勿論、参照型も変数の中身=実体アドレスが渡されるだけ
なぜ参照型のメンバのみ元に反映されるか、それは実体アドレスを介した間接参照になって同じ場所を指すから
だけど参照型の引数自体に割り当てても、それは引数が指すものが変わるだけで、元のmyclassが指す場所は変わらない
refやoutで(実体もしくは実体アドレスではなく)変数のアドレスが渡されることで初めて呼び出し元の変数自体を変えられる

953 名前:デフォルトの名無しさん (ワッチョイ ef02-iS6T) mailto:sage [2017/03/08(水) 22:38:35.99 ID:gvo8BpVN0.net]
参照型と参照渡しの区別がついてないだけか

954 名前:デフォルトの名無しさん (ワッチョイ bfa7-6uAD) mailto:sage [2017/03/09(木) 20:07:53.94 ID:f0dyr0g70.net]
File.Existsって、ファイル名にスペース入ってるとうまく機能しないのね。

みんなどうしてるん?
ショートファイル名にするのかな?

955 名前:デフォルトの名無しさん (JP 0Ha7-csvI) mailto:sage [2017/03/09(木) 20:16:11.18 ID:OnmTFZZNH.net]
なに言ってんだ

956 名前:デフォルトの名無しさん (アウアウオー Saca-Dvjv) mailto:sage [2017/03/09(木) 20:16:17.75 ID:kp/XS3ena.net]
>>938
機能するよ



957 名前:>>872 (ワッチョイ 0790-JiRs) mailto:sage [2017/03/09(木) 22:07:48.05 ID:C2ayowr10.net]
>>936
なるほど、オブジェクト指向って深いですね

958 名前:デフォルトの名無しさん (ワッチョイ fb59-Gnhz) mailto:sage [2017/03/09(木) 22:09:18.05 ID:FW6HepzM0.net]
Directory.EnumerateFiles()の拡張子の扱いのが嫌だ
*.htmって指定したのに*.htmlもヒットする






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

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

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