#author("2017-12-18T01:44:17+00:00","default:admin","admin") *CSV [#ddee4b22] -[[IMPORT AND EXPORT CSV IN ASP.NET CORE:https://damienbod.com/2016/06/17/import-export-csv-in-asp-net-core/]] -[[ASP.NET Core 1.0 / 1.1で SHIFT_JIS / UTF-8 BOM付きの CSV file を提供する:https://medium.com/@arichika/provide-csv-file-with-shift-jis-utf-8bom-in-asp-net-core-10a06c4b86ca]] -[[ASP.NET Core で CSV file を提供するソレを Azure App Service Web Apps と for Linux で動かしてみる:https://medium.com/@arichika/provide-csv-file-with-shift-jis-utf-8bom-in-asp-net-core-with-azure-web-apps-and-apps-for-linux-5646133638d8]] **[[CSV Helper:http://joshclose.github.io/CsvHelper/]] [#p1ddfaf4] -[[【.NET Core 2.0】CSVファイル(SHIFT-JIS)をCSVHelperで扱ってデータを汎用の型に格納するメソッドを作成する:http://akira-arets.blogspot.jp/2017/09/dotnetcore2-csvhelper-shiftjis.html]] -[[CsvHelper覚え書き:https://qiita.com/kyo-bad/items/e9d51790673086c69603]] -[[[C#] CsvHelperでCSVの書き込み、生成を行う方法:https://webbibouroku.com/Blog/Article/csvhelper-write]] -[[[C#] CsvHelperでCSVの読み込みを行う方法:https://webbibouroku.com/Blog/Article/csvhelper-read]] -[[CsvHelperによるCSVマッピング:http://spacekey.info/blog/archives/884]] -[[[C#][.NET] Shos.CsvHelper (CSV を読み書きするためのシンプルなライブラリー):http://blog.shos.info/archives/2017/07/shocsvhelper.html]] -[[C# + CsvHelperで、複数フォーマットのCSVの読込処理を共通化する:http://thinkami.hatenablog.com/entry/2016/02/10/053945]] -NuGetで以下のパッケージをインストール --CSV Helper --System.Text.Encoding.CodePages -読み込み時のエラー --exception.Data["CsvData"] に入っている **EPPlus [#b4df24d7] -[[CSV ファイルの読み込み:http://chawatoyo.blog.fc2.com/blog-entry-4.html]] -EPPlus は Excel だけでなく、CSVも読める! -ただし、日本語はNGな模様... * Excel [#f8f1de2b] -[[Excelファイルを C# と VB.NET で読み込む "正しい" 方法:https://qiita.com/midori44/items/acab9106e6dad9653e73]] -[[ASP.NET MVC で Excel ファイルを出力:http://tnakamura.hatenablog.com/entry/2015/10/29/075452]] -[[C#でExcelファイルを扱うライブラリごとのファイルクローズ方法(EPPlus、NPOI):http://redwarrior.hateblo.jp/entry/2017/09/07/090000]] -[[【C#】【CsvHelper】CsvHelperによるマッピングを利用しないCSV取り込み:http://kageura.hatenadiary.jp/entry/2015/05/01/193000]] **準備 [#c2b05cd6] -NuGetで以下のパッケージをインストール --Open XML SDK --System.IO.Packaging **Open XML SDK [#f9846c41] -[[Open XML SDK 備忘録:https://www.p-space.jp/index.php/development/open-xml-sdk]] -[[Open XML SDK を使って Excel ファイルを操作する (1) - 準備編:http://blog.modd.com/entry/2016/01/26/125206]] -[[Open XML SDK を使って Excel ファイルを操作する (2) - 基本構造編:http://blog.modd.com/entry/2016/02/02/153245]] -[[Open XML SDK を使って Excel ファイルを出力:http://tnakamura.hatenablog.com/entry/2015/10/28/090601]] **EPPlus [#r055a0b7] -[[EPPlusの使い方:http://chawatoyo.blog.fc2.com/blog-entry-15.html]] -[[C#でEXCELファイルの読み書きテストのサンプル:http://masaru-sasaki.sakura.ne.jp/masaru-sasaki/?p=268]] -(∩´ω`∩)EPPlusを使って、便利にExcel操作(∩´ω`∩):https://qiita.com/Hyper_Idol_Singer/items/77365e2557c174dfb2d3]] -[[EPPlusを使ったExcel Hello World:https://qiita.com/ishisaka/items/23b73b01cd48819ff2c1]] -[[EPPlusの基本的な使い方メモ (xlsx形式, Excelのインストール必要ない, COM使わない):http://devlights.hatenablog.com/entry/2015/04/02/062545]] -[[MacでcsvからExcelファイルを生成する(その2)EPPlus編:https://dev.classmethod.jp/tool/genelate-excel-epplus/]] -[[How to parse excel rows back to types using EPPlus:https://stackoverflow.com/questions/33436525/how-to-parse-excel-rows-back-to-types-using-epplus]] ... Excelシートから指定クラスのコレクションを生成する方法 **[[Closed XML:https://github.com/closedxml/closedxml]] [#nb6fe623] -[[ClosedXMLでxlsxファイルの読み書きを行う:http://sourcechord.hatenablog.com/entry/2015/06/21/180557]] -[[Closed XML関連:http://nineworks2.blog.fc2.com/?tag=ClosedXML]] -[[ClosedXML - The easy way to OpenXML:https://closedxml.codeplex.com/wikipage?title=Showcase&referringTitle=Documentation]] -[[ClosedXML で簡単な Excel ファイルを作成する方法:http://csharp.keicode.com/topics/handling-excel-files-with-closedxml-simple.php]] -[[ClosedXML で Excel ファイルを読む方法:http://csharp.keicode.com/topics/handling-excel-files-with-closedxml-simple-read.php]] -OpenXML SDKをラップして、シンプルにxlsxファイルを操作できるようにしてくれているライブラリ -コア部分が Microsoft の純正ライブラリである -Open XML規格用に作られたものであるため、旧形式ファイル(.xls)を読み込むことができない -ClosedXMLのほうがセルの取得方法が直感的 -NPOIでは空行または空セルを参照するとオブジェクトがnullになってしまう(しかし C# 6.0 でnull条件演算子?.が追加されたので、上記サンプルのように簡潔に書けるようになりました) -ClosedXMLでは行番号や列番号が0でなく1から始まる(好みの問題ですが、ExcelシートはA1から始まるので行番号とインデックスが一致する) **[[NPOI:http://npoi.codeplex.com]] [#i3dc0739] -移植元である Apache POI には長年使用されてきた実績がある -新形式ファイル(.xlsx)と旧形式ファイル(.xls)の両方に対応している -ClosedXML よりも高速