CSVファイルからデータを読み込んで、DataTableに入れたいことがありました。
基本的にはそんなにないとは思いますが。
そんな時に使える備忘録として残しておこうと思います。
csvをDataTableに変換するコード
さっそくコードは以下です。
1 2 3 4 |
//Usingは以下が必要です using System.Data; using System.Data.OleDb; |
CSVからデータを抽出する処理はこちらです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
/// <summary> /// csvファイルから全データを取得する。 /// </summary> /// <param name="filePath">抽出元CSV</param> /// <returns></returns> public DataTable extractAllCsv(string filePath) { DataTable dt = new DataTable(); //取得データを格納 string csvDir = Path.GetDirectoryName(filePath); //CSVファイルのあるフォルダ string csvFileName = Path.GetFileName(filePath); //CSVファイルの名前 //接続文字列 string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + csvDir + ";Extended Properties=\"text;HDR=Yes;FMT=Delimited\""; OleDbConnection con = new OleDbConnection(connectionString); //csvファイルから取得 string commText = "SELECT * FROM [" + csvFileName + "]"; OleDbDataAdapter da = new OleDbDataAdapter(commText, con); da.Fill(dt); return dt; } |
VBA C# オススメ参考書プログラミングの参考書でオススメの紹介をしていきます。
それぞれ私が使っている言語のみです。
VBAのオススメ参考書をExc...
csvをDataTable変換する処理の説明
簡単に処理の説明です。
csvファイルのパスを受け取って、全件をSELECTするメソッドです。
接続文字列は、csvファイルが存在しているフォルダを指定する必要があります。
また、SELECTするテーブル名はcsvのファイル名を指定します。
そのため、引数で受取ったfilePathのフルパスをフォルダパスとファイル名に分解して変数に格納しています。
そしてSELECTした結果をDataTableのdtに格納して返却します。
C#アプリ開発 メールお知らせアプリ
開発案件の経験は2案件ほどで、ほとんど経験ありません。
そんな私が独学でプログラミングの勉強をしてきました。
そこで...
おすすめのプログラミングスクール めざせ就職・年収アップ!
プログラミングを独学でされている人は意外と多いです。
ただ、プログラミングの独学は簡単にはいきません。
自分だけの力...
プログラミングの独学とはエラーとの闘い
プログラミングを勉強し始めた初心者の方はつまづくことが多いと思います。
私も最初はエラーが出るたびにいちいちビビッて、意味...