1


0

NETを使用する

カンマ区切りのテキストファイルがあります。 列の1つは、次のようなテキストで構成されています。1997/020269/07

OdbcCommandを使用してselectを実行すると、文字列はfloatとして認識され、実際のテキストではなく「回答」が返されます。

実際のテキストを取得する方法 手動でファイルを解析することを強制されるのでしょうか。

誰かが助けることができると思います…​お願い! :)

編集:いくつかのコードは多分? :)

文字列strConnString = @ "ドライバ= {Microsoftテキストドライバ(* .txt; *。csv)}; Dbq =" _FilePath @ ";拡張子= asc、csv、タブ、txt;セキュリティ情報の永続化= False";

var conn = new System.Data.Odbc.OdbcConnection(strConnString);

var cmd = new System.Data.Odbc.OdbcCommand( "TextFile.txtからMyColumnを選択"、conn); var reader = cmd.ExecuteReader();

while(reader.Read()){Console.WriteLine(reader ["MyColumn"]); }

これは1997/020269/07の代わりに0.014074977を返します

2 Answer


2


http://msdn.microsoft.com/en-us/library/ms709353%28VS.85%29.aspx[schema.ini]ファイルを使用してみましたか - これらはテキストのフォーマットを明示的に定義するために使用できます。データ型を含むファイル。

あなたのschema.iniファイルは少し似た感じになるかもしれません:

[sourcefilename.txt]
ColNameHeader = true形式= CSVDelimited Col1 = MyColumnテキストの幅14 Col2 = ...


0


schema.iniを使ってみる

[yourfile.txt]
ColNameHeader = false MaxScanRows = 0フォーマット= FixedLength Col1 = MyColumnテキストの幅20

さようなら。