XLSスプレッドシートでセルを取得して文字列配列に割り当て、データを操作して複数のCVSファイルにエクスポートしようとしています。XLSスプレッドシートのクエリ文字列の選択C#
XLSスプレッドシートには関連性のない情報が含まれています。使用可能なデータは17行目から開始されず、列にはデフォルトのSheet1だけの見出しがありません。
私は関連する質問を見て、それを自分で考えてみましたが、成功しませんでした。次のXLSの種類のコードは動作しますが、行の長さがXLSファイルごとに異なり、空の列と行を自動的に引っ張っているので、作業が面倒です。
CODE
public static void xlsReader()
{
string fileName = string.Format("{0}\\LoadsAvailable.xls", Directory.GetCurrentDirectory());
string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";" + @"Extended Properties='Excel 8.0;HDR=Yes;'";
string queryString = "SELECT * FROM [Sheet1$]";
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
OleDbCommand command = new OleDbCommand(queryString, connection);
connection.Open();
OleDbDataReader reader = command.ExecuteReader();
int counter = 0;
while (reader.Read())
{
Console.WriteLine("Line " + counter + ":" + reader[28].ToString()); // Just for testing
counter++;
}
}
}
私は必要なデータを取得するために、ループと策略の束を行うが、との行17からデータを得ることができるクエリ文字列が存在しなければならない可能性があり
たった8列(26列ではなく、18列ではない)ですか?
多くのクエリ文字列の例を試しましたが、開始行インデックスで作業するか、空のデータをフィルタリングするために継ぎ合せることはできません。
はこれを試して、素晴らしい作品!私は接続文字列とデリミタを変更し、結果を生成しました。白いスペースと何百もの空のセルの区切り線をきれいにする方法はありません。あなたの助けてくれてありがとう、私は正しい道に今いることを知っている。 – abflett
@abflett問題ありません。この解決策は私を理解するために私をしばらく持ち込んだ。あなたは私にプラスの担当者と答えを与えることができますか?ありがとう! – Radmation