私はFileHelpersを介してCSVを動的に読み込み、CSVデータをデータテーブルとして扱おうとしています。私のCSVファイルは同じではありません。それらは、異なる列ヘッダーと異なる列量を持ちます。私はReadStreamAsDTメソッドを使用していますが、FileHelperEngineを初期化する構造化クラスが必要なようです。何か案は?ReadStreamAsDT - FilehelpersとC# - ファイルヘルパーを使用してCSVを動的に読み込む方法
2
A
答えて
4
ファイルからDataTable
を作成するには、FileHelpers.RunTime
とDelimitedClassBuilder
を使用しなければなりませんでした。ここに私の方法です。もっと時間があれば、これをより良く説明します。明らかに
private static DataTable CreateDataTableFromFile(byte[] importFile) {
var cb = new DelimitedClassBuilder("temp", ",") { IgnoreFirstLines = 0, IgnoreEmptyLines = true, Delimiter = "," };
var ms = new MemoryStream(importFile);
var sr = new StreamReader(ms);
var headerArray = sr.ReadLine().Split(',');
foreach (var header in headerArray) {
cb.AddField(header, typeof(string));
cb.LastField.FieldQuoted = true;
cb.LastField.QuoteChar = '"';
}
var engine = new FileHelperEngine(cb.CreateRecordClass());
return engine.ReadStreamAsDT(sr);
}
、そこ検証の多くは、このメソッドに開催される他のロジックと一緒ですが、私はそれに飛び込むために、今多くの時間を持っていません。お役に立てれば!
+0
私は同じアプローチを使用していますが、ファイルサイズが大きい場合は "Out of memory exception"がスローされます。 –
0
http://www.codeproject.com/KB/database/CsvReader.aspxを試しましたか?このライブラリの解析を活用することができます。それは速く信頼できるものです。
関連する問題
- 1. Codeigniterファイルヘルパーを使用してファイルを書き込む方法
- 2. FileHelpers - ®文字の読み込み方法?
- 3. ajaxを使用してCKEDITORでテンプレートを動的に読み込む方法は?
- 4. CでRustライブラリを動的に読み込む方法は?
- 5. AngularJSを使用して動的指示コンテンツを読み込む方法は?
- 6. Javascriptを使用してクライアントCSVをアレイに読み込む
- 7. Cで動的割り当てを使用してファイルを読み込む
- 8. モジュールをBabelとWebpackに動的に読み込む方法は?
- 9. aspコントロールを含むUserControlを動的に読み込む方法
- 10. Phantomjsでスクロールして動的コンテンツを読み込む方法
- 11. GoogleクラウドプラットフォームでCSVファイルを自動的に読み込む方法は?
- 12. LogStashを使用してElasticSearchでcsvを読み込む
- 13. C#/ C++でOCRを使ってcalcを読み込む方法
- 14. buffo.readを使用してファイルを読み込むときにGolangの動的サイジングスライス
- 15. C#の使用方法拡張スマートデータを読み込むには?
- 16. SystemJを使用してJSにHTMLを読み込む方法
- 17. React.jsでCSVファイルをアップロードして読み込む方法は?
- 18. jqueryを使用してVimeoの動画を動的に読み込む
- 19. filehelpersエラーでcsvファイルを読み取る
- 20. openXML C#を使用してファイルテーブルをExcelテーブルに読み込む方法
- 21. R-データを動的に読み込む方法
- 22. nibファイルを使用してUIViewを読み込む方法
- 23. Picasaを使用してBackgroundManagerドロワブルに読み込む方法
- 24. cvLoadImageを使用してOpenCVウィンドウに読み込む方法は?
- 25. c# - 読み込み/文字列としての使用方法
- 26. COleDispatchDriverを使用してCOMオブジェクトの動的な読み込みメモリを読み込む
- 27. C++ ByteをIntegerとして読み込む方法endianness independent?
- 28. jsonスキーマをwebpackでtypescriptに動的に読み込む方法
- 29. Component.createComponent()を使用して組み込みのQMLコンポーネントを動的に読み込むことが可能
- 30. csvのデータをTensorFlowに正しく読み込む方法
「自分のCSVファイルが同じではない」と言うときは、各CSVファイルに独自の定義があること、あるいはCSVファイルの各レコードが異なる可能性があることを意味しますか? –
あなたはこれを理解したことがありますか?私は、具体的なオブジェクトを与えることなくエンジンをインスタンス化する方法を見つけることができないようです。私は、汎用CSVファイルを汎用データベースに取り込みたいだけです。 –