X



ふらっと C#,C♯,C#(初心者用) Part137
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん (ドコグロ MM07-2FKJ)
垢版 |
2018/04/06(金) 17:40:19.48ID:oKXVP34zM
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■関連スレ
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/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part136
http://mevius.5ch.net/test/read.cgi/tech/1520057345/

■コードを貼る場合は↓を使いましょう。
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
0444デフォルトの名無しさん (ワッチョイ 4b9f-ZOQu)
垢版 |
2018/05/11(金) 20:39:18.87ID:A7KRRugp0
ポータブルアプリの設定ファイルを扱うなら何がスタンダードですか?
XmlSerializer使ってxmlファイルにするか
Win32API経由でレガシーなiniファイルにするか。

やっぱ前者ですかね?
0454444 (ワッチョイ 4b9f-ZOQu)
垢版 |
2018/05/11(金) 23:25:00.79ID:A7KRRugp0
なるほど、今時はJSONですか。
ただ、少し調べて見たところweb系の構成ファイルとして使う?みたいで自分の思ってるのとは違うのかなと感じました。

後出しになってしまって申し訳ないんですが、自分のイメージしてるのはFormアプリで例えば「最前面に表示する/しない」だとか「昇順/降順で並べる」みたいな、チェックボックスやラジオボタンの選択内容を起動時に読み込み、終了時に書き込みする想定です。

appsettings.jsonは読み込みしかなさそうだったのですが、書き込みってありますか?自分でjson形式にコンバートしてベタに書き込みしろってことですかね?
0460デフォルトの名無しさん (ワッチョイ cbe8-k37M)
垢版 |
2018/05/12(土) 03:56:46.76ID:ek+Myn8j0
var exts = {".jpeg", ".jpg", ".png", ".gif"};

var f = Directory.GetFiles(dir, "*.*", SearchOption.AllDirectories)
.Where(c => exts.All(extension => !c.EndsWith(extension)))
.ToArray();

extsの拡張子以外のファイルを抽出したいんだけど
大文字小文字区別せずに拡張子だけを比較する方法ないですか?

もっと効率いい方法ある気が・・・
0461デフォルトの名無しさん (ワッチョイ cbe8-k37M)
垢版 |
2018/05/12(土) 04:18:13.81ID:ek+Myn8j0
!c.ToLower().EndsWith(extension)
で対応します
0462デフォルトの名無しさん (ワッチョイ 039d-uwJI)
垢版 |
2018/05/12(土) 05:18:29.02ID:V3QYZkJA0
>.NETには標準のシリアライザがいくつも存在するんだから、特に理由がないかぎり
>あえて外様を使うとか頭の悪い中学生じみてる

いくつもあるの? どんなのがあるのか三つくらい教えてください。
ビルドするごとに消えるのでは使いにくいというか何度もビルドするのは普通だとおもうので
それでは使い物にならないので、ビルドしても消えないものがいい。
0466デフォルトの名無しさん (ワッチョイ 3d9e-pJrV)
垢版 |
2018/05/12(土) 06:29:12.76ID:hwxaPbIq0
設定ファイルは、csv, yaml, json。
Java系のant, maven などは、XML。
Mac系は、property file

chef, vagrant では、Ruby。
Gradle では、Groovy

Haxe のserializer は、数個のプログラミング言語に渡って機能するし、
json, xml みたいに型情報が無くなったりしない

もちろん、Ruby, Groovy も、
プログラミング言語自体が設定ファイルだから、そのまま使える
0468デフォルトの名無しさん (ブーイモ MM19-27Jw)
垢版 |
2018/05/12(土) 07:21:14.10ID:UP+Hygq+M
DataContractSerializerは絶対にファイルに書いちゃダメってわけではないけど、データのスキーマがあらかじめ決まってる場合には使えない
あくまで書く側と読む側とで解釈が共通でありさえすれればよくて、その中身を人間は気にしないよ、ってときに使う
0469444 (ワッチョイ 4b9f-ZOQu)
垢版 |
2018/05/12(土) 07:26:10.70ID:4i84e4IV0
調べが足りずすみません。
NewtonsoftのJSON.NETというのを使えばいいみたいですね。
.NET標準のXmlSerializerと同じような感じの使い方ですね。

ちなみに、XMLはやめた方が良いと意見ありましたが、
どういった理由からでしょうか?
0471デフォルトの名無しさん (ワッチョイ 3d9e-pJrV)
垢版 |
2018/05/12(土) 07:45:11.57ID:hwxaPbIq0
XML は、JSON よりも可読性が高いから、人が見る・書く設定ファイル。
例えば、アプリのフォームのデザインの設定ファイルに使う

人が見ない、単にコンピューター間のデータの受け渡しには、JSON

XMLを使うと、ややこしい
0473デフォルトの名無しさん (ワッチョイ 039d-uwJI)
垢版 |
2018/05/12(土) 08:08:53.44ID:V3QYZkJA0
XMLは可読性がわるい。つまり直観が効かない。機械向きで非人間的だから設定ファイルには不向き。
たしかに寄ってたかってよく考えてあるのは解る。それには感心するが、寄ってたかって考えすぎると
たいていは失敗する。その代表的な例としてはXMLもっとも良い例のひとつだろう。つまり駄作だなとおもう。
0475デフォルトの名無しさん (ワッチョイ 8d03-XovT)
垢版 |
2018/05/12(土) 08:45:40.67ID:tydT0Seq0
>>471
XMLが読みやすいってwサヴァン症候群なんおまえ?w
0483デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 09:45:59.03ID:iloBjJ0sM
データの規模が大きくなったらXMLのほうが断然有利
JSONとXHTMLを等価変換するスクリプトを書いてJSONだけでウェブサイトを構築する実験を社内でやった事があるがJSONのスコアは酷いものだった
JSONはネストが深くなると使い物にならん
0486デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 09:56:29.74ID:iloBjJ0sM
データは自社の資産だから常識的に勝手には公表できない
実験方法は簡単にだけど示したのだからデータが欲しければ実験して検証すればいい

逆にJSONが優れていると言うなら
根拠無しではなくデータなり検証方法を示してほしいね
0491デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 10:08:59.85ID:iloBjJ0sM
>>489
5chに書き込むためだけに実験費用払いたくねえよ
こういう実験はサンプルとして人を雇わないとできないんだよ
思考停止ノータイムでボタン押さずに常識的に少し考えてからレスしてくれ頼むから
0493デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 10:19:11.86ID:iloBjJ0sM
>>492
あんたは論外
パフォーマンスの話なんて誰もしてない
今はみんな生産性、可読性、保守性の話をしてるんだよ

それを測るためにJSONとXHTMLを等価変換するツールを作った

グループAの人達にはJSONでタグ打ちさせてそのJSONをツールでXHTMLに変換した

グループBの人達にはXHTMLで直接タグ打ちさせた

完成するまでの時間や完成したXHTMLのバグ密度など様々なメトリクスを計測したら直接タグ打ちしたグループBのほうがスコアが高かった

グループAとグループBのスコア差はネスト数が深いほど大きくなった

そういう話な
パフォーマンス比較なんてくだらん話は他所でやってくれ
0499デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 10:26:11.54ID:iloBjJ0sM
馬鹿しかいないのか

人間がやる意味がないとか言ってる連中は実験の趣旨を全く理解してない

だから思考停止してノータイムでボタン押すのやめろって言ってるんだよ

ほんと馬鹿の相手するの疲れるな
0517デフォルトの名無しさん (ブーイモ MM19-27Jw)
垢版 |
2018/05/12(土) 10:41:32.86ID:wBO8DWf8M
>>493の実験は「XHTMLのデータはJSONで記述するには適さない」ということを示しているだけだな
そりゃXHTMLのスキーマはXMLで表現しやすいように設計されてるんだから、
JSONだと属性とコンテンツの区別がなかったりして記述しづらいのは当たり前だ
JSONにはJSONに適したスキーマ設計がある
0526デフォルトの名無しさん (アウアウウー Sa89-27Jw)
垢版 |
2018/05/12(土) 10:47:44.90ID:kT5GzpcRa
エクセルからマスターや設定をインポートするようになってるシステムは壊しそうで怖いわ
うっかりレイアウトがズレてて正しくデータが取れなくなるとかよくある
バージョン管理の問題にも関連するけど、再現性が乏しいんだよエクセルは
0529デフォルトの名無しさん (アウアウウー Sa89-bFqk)
垢版 |
2018/05/12(土) 10:48:28.96ID:My8LWy2ka
>>517
そこの会社の内部の抗争があるんだと思う

いまどきxhtmlを使ってる派閥がいて
そいつらが不利になったので意味不明なテストでxhtmlすげーをやって
何も考えないやつがそれに賛同したと

エジソンが高圧送電は危険だと言って動物を殺す実験をしたようなもの
0539デフォルトの名無しさん (ワンミングク MMa3-2hZ9)
垢版 |
2018/05/12(土) 10:53:45.26ID:iloBjJ0sM
>>506
Excelの場合はそもそもツリーデータ構造を表現するためのスタンダードなフォーマットが無いので比較する以前の段階

まずはツリー形式のデータ構造を表現するためのフォーマットのデファクトスタンダードを業界全体で決めてくれ
比較はその後に回していいんじゃないかな
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況