固定長ファイルを読み込むと、値に常にスペースがありません。
例: フォルダ c:\temp には 2 つのファイルが含まれています
fs.txt
ITMHMC12-163 -0000153430.30
ITMHMC12-164 -0000000745.18
schema.ini
[fs.txt]
ColNameHeader=False
Format=FixedLength
DateTimeFormat=yyyymmdd
Col1=RecordTypeSCFBody Text Width 3
Col2=InvoiceNumber Text Width 10
Col3=Amount Text Width 14
ファイルを読み取るC#コード...
string fileName = @"C:\temp\fs.txt";
string dir = Path.GetDirectoryName(fileName);
DataTable dataTable;
using (OleDbConnection conn =
new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;" +
"Data Source=" + dir + ";" +
"Extended Properties=\"Text;\""))
{
conn.Open();
using (OleDbDataAdapter adapter = new OleDbDataAdapter("select * from " + fileName, conn))
{
dataTable = new DataTable();
adapter.Fill(dataTable);
}
conn.Close();
}
Console.Write(dataTable.Rows[0][1].ToString()); <-- this line **
--> この行は "HMC12-163" を返しますが、"HMC12-163" を期待しています。スペースに注意!
あなたの助けに感謝。
どうもありがとう!-デブ