1

エクセルシートからのデータの読み取りに取り組んでいます。私のテーブルは次のようになります。

        AAAA            bbbbb              cccc
        1                2                  3
        4                5                  6
        --------------------------------------



        --------------------------------------

       data           data                  data

すべての行をループして、各セルの各値を個別の文字列に保存したいと思います。

ここに私のテーブルによると、

保存したい、

    string column1= 1;
    string cloumn2=2;
    string clomnn3= 3;

これをすべての行に対して繰り返します。私のExcelには3つの列しかありません。

私はこのコードを試しました

        //Reading Excel file
        string datafilename = @"D:\Book2.xls";
        string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + datafilename + ";" + "Extended Properties=Excel 12.0;"; 
        OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn);
        //fetching excel data into DataTable 
        System.Data.DataTable _dtDataFile = new System.Data.DataTable();
        ArrayList abcd = new ArrayList();
        myCommand.Fill(_dtDataFile);

        foreach (DataRow row in _dtDataFile.Rows)
        {
            Response.Write(row[i]);

        } 

私が得た出力は

    12346............datadatadata

すべてのデータを1つの文字列で取得しています。データを、行ごとに別々の文字列で保存したいと思います。

誰もがこれを行う方法を提案できますか?

ありがとうございました。

4

1 に答える 1

0

すべてのデータを応答ストリームに直接書き込んでいるため、すべてのデータを1つの文字列で取得しています。Arionが提案したようにマークアップを追加するか、実際にこれらの値をデータ構造に追加する必要があります。また、Excelオブジェクトライブラリの使用について考えたことはありますか?少しすっきりしているかもしれません。さらに、ファイルのネイティブ構造を直接繰り返すことができます。

于 2012-04-10T13:32:25.420 に答える