2012-03-09 13 views
0

asp.net Webアプリケーションでファイルをアップロードした結果、xlsファイルがバイト[]に置かれています。 xlsファイルを読み込み、バイト[]として処理できるライブラリはありますか?私はファイルをディスクに保存したくありません。メモリ内のXLSファイルを読み込みます。ASP.Net

私がする必要があるのは、セルの内容を読むことができることです(選択肢があれば、私はcsvファイルを受け入れることを好むでしょう)。

これを行うSpreadsheetGearが見つかりましたが、私が必要とする以上に多くのことをやっているソフトウェアには1000ドルも支払うつもりはありません。

私はXLSファイルではなくXLSXファイルを指していることに注意してください。しかし、私は両方のアドバイスに感謝します。

答えて

1

チェックアウト可能ですexcellibrary。 OpenXML(.xlsx)を扱っている場合は、Open XML SDKをチェックアウトすることができます。

1

EPPlusは、Excelファイルを操作するための固体ライブラリです。これには、MemoryStreamからファイルとやりとりする方法を示すサンプルがいくつかあります。

http://epplus.codeplex.com/

-1

あなたは、ADO.NETおよびOLEDBドライバを使用してExcelライブラリなしの.xlsコンテンツを読むことができます。しかし、ワークシートは「表」形式でなければなりません。これが本当であれば、うまく動作します。

接続文字列は次のようなものでなければなりません:

プロバイダ= Microsoft.Jet.OLEDB.4.0;データソース= C:HDR =はい;;;プロパティ= "エクセル8.0拡張の\ MyExcel.xls IMEX = 1 "である。

よろしくお願いいたします。

0

XLSへのあなたの言及は、そのような場合には、あなたがメモリ内にあなたのXLSを渡すことができTarantino Bitbucket Repository

でタランティーノプロジェクトの一部として提供さExcelWorkbook/ExcelWorksheetリーダーコードを使用することができ、古いExcel 97の形式を、示唆ヘルパーメソッドはワークブックデータとシートを表すテーブルを持つDataSetを返します。あなたは全体タランティーノプロジェクトのコードを必要としないと簡単につかむことができます。

  • ExcelWorkbookReader.cs
  • ExcelWorksheetReader.cs
  • IExcelWorkbookReader.cs
  • IExcelWorksheetReader.cs

及びこれらを追加しますファイルをソリューションに追加します。インタフェースを使用して

は単純です:

[HttpPost] 
public ActionResult Uploadfile(HttpPostedFileBase file) 
{ 
    var reader = new ExcelWorkbookReader(); 
    var data = reader.GetWorkbookData(file.InputStream); 

    // Do something with the data here 

    return RedirectToAction("List"); 
} 
関連する問題