Excelファイルから取得した時間値を文字列にフォーマットしてから、SQLテーブルに挿入する必要があります。私はこのコードを使用しました:
dtTruck = string.Format(dtTruck, "Long Time");
dtPlane = string.Format(dtPlane, "Long Time");
これは、プロジェクトを初めて実行したときの dtTruck フィールドでのみ機能しました。したがって、これは値をまったくフォーマットしていません。この07:00の代わりに、この0,29166666667として時間値を文字列としてSQLテーブルに挿入します
私のコード:
public void ReadExcelFile()
{
string filename = @"C:\Temp\Copy2.xlsx";
using (OleDbConnection connection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\""))
{
try
{
connection.Open();
string sqlCmd1 = "SELECT * FROM [Sheet1$]";
using (OleDbCommand command = new OleDbCommand(sqlCmd1, connection))
{
command.CommandType = System.Data.CommandType.Text;
using (OleDbDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
alias = "" + reader[3];
codeT = "" + reader[4];
dtTruck = "" + reader[5];
codeP = "" + reader[6];
dtPlane = "" + reader[7];
dtDealer = "" + reader[8];
dtTruck = string.Format(dtTruck, "Long Time");
dtPlane = string.Format(dtPlane, "Long Time");
SearchForAdrIDAndCustID(Convert.ToString(reader[0]), Convert.ToString(reader[3]));
InsertData(custID, "" + reader[3], adrID, dtTruck, codeT, dtPlane, codeP, dtDealer);
}
}
}
}
catch (Exception exception)
{
Console.WriteLine("ERROR in ReadExcelFile() method. Error Message : " + exception.Message);
}
}
}
誰でもこれで私を助けることができますか?