ふらっと C#,C♯,C#(初心者用) Part134
■ このスレッドは過去ログ倉庫に格納されています
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part133
http://mevius.5ch.net/test/read.cgi/tech/1510056685/
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured >>150
そんなもんコード埋め込みでいいよめんどくせえ
動きゃいいんだよ
C#erってそういうの好きだろ 俺ならそんなもん一枚のHTMLとJavaScriptで作ってAWS S3に置くわ
その程度のことにデプロイの手間をかけるのはアホらしすぎる >>154
いちいちブラウザひらくのめんどくさ
ブラウザだとウィンドウサイズでかいし 今時一切ブラウザ使わない業務システムなんか存在するのか?
ブラウザくらい常に開いてるだろ 500×3でたかだが1500前後にデータベースは大げさだ
.resxファイルで済む量だろう >>150
>2〜3台のPCだけで使う小規模なアプリケーションで、不変で追加もしない500×3列程度のデータ
だったら500x3の二次元配列で行けると思う。 てきとーなクラス作ってXmlSerializerで永続化すりゃOK
検索も500件程度なら速度を気にせずLINQで楽々実装可能 今時新規でXMLはないわ
このまま衰退して消えてくれ JSONの指定があればJSONでもいいけど
何も指定がなければXMLで書くけどな
別にレガシーでもなくね? でも項目数多くなって激遅になったらCSVに戻せる構造なら戻したほうがいいよ xml、resx、json、yaml、SQLiteといろいろ選択肢がありますね。少し調べてみて良さそうなもの選んでみます。ありがとうございました >>169
XML比なら、
人間にとって扱いやすい
サイズが小さい
読み書きが速い
属性と要素の使い分けをしなくていい
JSON SchemaはXML Schemaより圧倒的に分かりやすく書きやすい
配列、マップ、数値、論理値、文字列という最低限の型付けがあるので、
プログラミング言語のデータ構造とのマッピングがしやすい(XMLは属性やXML Schemaで明示的にマッピングしてやらないと使い物にならない) 人間にとって扱いやすいだけはXMLの方が優れてると思うな
特にデータ量が増えるにしたがってjsonはそのまま読むのが不可能になってくる この案件だと、Excelで加工しやすいcsvがマッチしているんじゃないかな?
そりゃxmlだって出来るが、仕組みが大きくなる SYLKファイルにしたっていいんだぜ
どうせ作業量変わんないだろ 今時パーサーやシリアライザが揃ってるんだからどれでも同じな気はする >>175
データ量が多くなるとおせーんだよなxml,json
んで運用入ってから素人でも編集できるいいツールはないの?
って普通に無いからな(笑)
本気で作るものほどcsvやxls 結局は小さいデータなら下手なDBとか使うより、
csvの方が丈夫さとか確認のしやすさで良いって言うw だから上手なDBとか使えばcsvの方より良いんだろ DBはトランザクションあるから規模に関係無く必要だと思ったら使っとけ
設定ファイル的な話としたら
xmlとjsonって微妙だよねと 設定ファイル的な話だとしたらjsonって微妙だけどxmlはクソ
xmlはどんな用途向けにもクソ >>185
言うほど変わらんような気がするけど
何が嫌なんだ? >>186
嫌なのではなくクソだと言っとるのだが? アホちゃいまんねんパーでんねんって言われてもどう違うのか本人にしか分からんよw >>190
何が気にいらんのか知らんけど変な絡み方するのやめてもらえんかな? むしろお前が無駄に絡んでる気がするが...
俺も>>179でFAだと思う >>194
同じって事はないよ
どの形式でも必要十分な機械可読性を得られるなら
選択の決め手になるのは速度などではなく人間可読性
ヒューマンリーダビリティ
xmlはこれが壊滅的にクソ バックエンドだと設定ファイルは.csがベスト
貧弱なインテリセンスで間違えやすい設定なんか書きたくないっすわ
テストまで考えるとビルドなしで変更可能である意味がほとんどないしな 今日は特別に俺からのクリスマスプレゼントの言葉を贈ってやろう
お前らはもう少し自分の無知無能と真剣に向きあった方が良い >>180
多くなるならJSON Linesの方が効率いいよ
ログとかで普通に使われるファイル形式
CSVはスキーマが変わると面倒なんだよな 今時csvはなんちゅう本中華
レガシーへ(から)の接続ならしょうがないが >>202
いいアイディアだな
ただこのスレはこのまま残して
初心者雑談用として新しくスレが欲しいな そんなことしても質問スレで雑談が始まるのは目に見えてるやん... 議論スレがあるじゃん
脱線しそうなら自発的に移動して
ふらっと C#,C♯,C#(議論用) [無断転載禁止]©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1469538912/ 無理でしょ
どこまでが質問の答えなのか雑談なのか区切りが曖昧だし >>199
ごめんなさい。
今日の朝、靴下にその言葉入ってたら読んでたよサンタさん! >>207
>>199みたいに自覚ない奴がいる限り誘導しても無駄でしょ
まあXMLに親でも殺されたんだろうな w ボクのおとうさんは、XMLというやつに殺されました
俺はWPFだなw 初心者なので教えてください。
xml ならDataSet.ReadXml()でお手軽に扱えてたんですが、jsonはどう読み込んで使うのですか?
ちょっとググったら、jQueryとか、webっぽいのが目についたのですが、ローカルexeでも使えるんでしょうか? >>211
NuGetでJson.NETを拾ってくる UWPならWindows.Data.Jsonが使えるのでダウンロードしなくてもよい XML最高って言う奴がいるけどDTDとかちゃんと理解して使ってるのか疑問
俺はさっぱりわからなないので放置してる
XMLは賢い人が集まって俺って賢いだろを連発してクソ企画になったって本で読んだ XMLは同じようなものが大量に並んでてゲシュタルト崩壊?してタグがタグに見えなくなる jsonの問題はコメントだな、一応使える場合もあるけど本式はコメント使えない
ググると作者が原理主義者でどうにもならんようだ >>218
じゃあ折角だし
ListviewItemCollectionやCollection<T>をソートするいい方法ってなんかある?
別インスタンスにするのはNG
並び替えたやつをループしてRemoveとAddを繰り返しやる方法以外思いつかなかった いいってのは何がいいんだ?
メモリ効率か?
ソート速度か?
コーディングの手軽さか? >>219
並び替えたやつをループとは?
どうやって並べ替えた? そもそもICollection<T>に要素の並び順なんてものはない
IEnumerable<T>として列挙されるときの順番ならOrderBy
その順番を使い回したいならToArray >>219
分かりづらかったんで質問を変える
private readonly Collection<string> hoge
のhogeを文字列順にするとき
foreach(var s in hoge.orderby()){
hoge.Remove(s);
hoge.Add(s);
}
でできたんだけど理由があってaddは使いたくなかった
add使わないで並び替えってできる? Comparison書いてSortすりゃいいのでは
この手の問題は並び順のルールの方に重点が置かれる、並び替え方なんてこの際どうでもいい Collection<string>がICollectionの間違いならToListして代入するだけじゃないの? >>225
Sortがあったら楽だったんだけどね
>>226
https://msdn.microsoft.com/ja-jp/library/ms132397(v=vs.110).aspx
読み取り専用だから代入できない
ICollectionは継承してるクラス
ToListした時点で別インスタンスだからそれに対してSortしても意味無い
>>223
気持ちは分かるんだけど使ってる先を修正できずこちら側で並び替えないといけない状況があってな
インデクサー定義されてるんだから並び替えできても良さそうなのに見つけられなかった point(1,1)
を
axis(1,1)
に正規表現で置換したいのですがどうすればいいでしょうか?
visualstudio2015です point\({.*}\)
axis(\1)
とやっても出来ないので悩んでいます >>227
なるほどw
でもreadonlyにこだわる必要本当にあるの? 自分でソートロジックかいて要素入れ替えていけば良いだけ
おれならそうとうな量でない限り、ソート済みの別インスタンスと入れ替えるがな >>224
理論的に考えてインデクサを持たないICollectionをAdd無しに内部での並び順を変えるのは不可能だろ もし元インスタンスにさわりたくないなら、元のコレクションとは別に
ソートした結果のインデックス位置をもつコレクションつくってそっちから引っ張るけど >>232
IListも継承してるクラスだからインデクサ持ってんじゃないかな
元インスタンスに触りたくないというよりは元インスタンスにも反映させたい
別クラスで作られたオブジェクトのインスタンスを渡してもらっていて、それをreaonlyにセットこっちのを並び替えたら同じ様に元のデータも並び替えられるって感じ
ここら辺の構成は弄れない
本当に勘弁してほしいわ >>235
ICollectionはIEnumerableしか継承してないんだがIListも継承してるとは? >>237
今議題にしてるのがCollection<T>クラスだからそっちの継承をみてくれ >>236
マイクロソフトのドキュメントみて\1を$1にしたらできた >>238
すまんな
じゃあ先頭から参照書き換えていけばいいのでは? >>239
(にして$にしたらできました!有難う御座います! なるほど、Add、Removeじゃなくてhoge[i]=s みたいな感じで順に設定し直せばいいのか
多分>>233も同じことを言ってたんだろうけど別の意味で捉えてた
次からそうするわ 車輪の再発明感全開だなw
public static class Extensions
{
public static void CopyTo<T>(this IList<T> src, IList<T> dst)
{
int count = Math.Min(src.Count, dst.Count);
for (int i = 0; i < count; i++)
dst[i] = src[i];
}
public static void Sort<T, TKey>(this IList<T> x, Func<T, TKey> keySelector)
{
x.OrderBy(keySelector).ToList().CopyTo(x);
}
} C#はメモリ不足でコンパイルできないことはありますか? >>249
該当するコンパイラのスレで聞いてください >>249
絶対にないとはいえないけど、そもそもそんなマシンじゃ開発なんてできやしない。 >>249
その前にVSが重すぎてまともに動かないから大丈夫 >>252
コンパイルとVisual Studioは別問題 ■ このスレッドは過去ログ倉庫に格納されています