TXTからExcelへの変換は、テキストファイルからExcelスプレッドシートにデータをパースして再フォーマットし、データの表示、編集、分析を容易にするプロセスです。この記事では、無料のNETライブラリを使用して、C#でTXTテキストファイルをExcelに変換する方法を紹介します。
無料の.NETライブラリ - インストール
TXTからExcelへの変換にはFree Spire.XLS for .NETライブラリが必要です。製品パッケージはNuget経由で直接インストールできます。または、以下のリンクからダウンロードし、手動でdllを参照として追加することもできます。
C#でTXTをExcelに変換する方法
C#を使ってテキストファイルからエクセルにデータをインポートするには、次のようにする必要がある:
-
File.ReadAllLines(string path)
メソッドを使用して、テキスト・ファイルのデータを行ごとに読み取ります。 -
Trim()
メソッドを使用して、各行の先頭および末尾の空白文字をすべて削除します。 -
Split()
メソッドを使用して、指定した区切り文字でデータを分割し、リストに格納します。 - リスト内の各行と各列を繰り返し処理する。
-
Worksheet.Range[].Value
プロパティを使用して、指定した Excel セルにデータを入力します。 -
Workbook.SaveToFile()
メソッドを使用して、生成された Excel ファイルを保存します。
using Spire.Xls;
using System.IO;
using System.Linq;
namespace ExcelToTXT
{
class Program
{
static void Main(string[] args)
{
//テキストファイルを読み込み、その中のすべての行を読み込む
string[] lines = File.ReadAllLines("sampleR.txt");
//各行の先頭と末尾の空白文字をすべて削除し、データを分割してリストに格納する
var data = lines.Select(line => line.Trim().Split(' ').ToList()).ToList();
//エクセルのワークブックを作成する
Workbook workbook = new Workbook();
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//リストの各行と各列を繰り返し処理する
for (int rowNum = 0; rowNum < data.Count; rowNum++)
{
for (int colNum = 0; colNum < data[rowNum].Count; colNum++)
{
//Excelワークシートの指定されたセルにデータを書き込む
sheet.Range[rowNum + 1, colNum + 1].Value = data[rowNum][colNum];
//ヘッダー行のフォントを太字にする
sheet.Range[1, colNum + 1].Style.Font.IsBold = true;
}
}
//列幅の自動調整
sheet.AllocatedRange.AutoFitColumns();
//エクセル (xlsx/ xls) ファイルとして保存する
workbook.SaveToFile("TXTtoExcel.xlsx", ExcelVersion.Version2016);
workbook.Dispose();
}
}
}
無料の.NET Excelライブラリが提供するExcelファイル処理機能の詳細については、ドキュメントを確認してください: