0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

C#でTXTをExcelに変換する

Last updated at Posted at 2024-12-03

TXTからExcelへの変換は、テキストファイルからExcelスプレッドシートにデータをパースして再フォーマットし、データの表示、編集、分析を容易にするプロセスです。この記事では、無料のNETライブラリを使用して、C#でTXTテキストファイルをExcelに変換する方法を紹介します。

無料の.NETライブラリ - インストール

TXTからExcelへの変換にはFree Spire.XLS for .NETライブラリが必要です。製品パッケージはNuget経由で直接インストールできます。または、以下のリンクからダウンロードし、手動でdllを参照として追加することもできます。

C#でTXTをExcelに変換する方法

C#を使ってテキストファイルからエクセルにデータをインポートするには、次のようにする必要がある:

  1. File.ReadAllLines(string path) メソッドを使用して、テキスト・ファイルのデータを行ごとに読み取ります。
  2. Trim() メソッドを使用して、各行の先頭および末尾の空白文字をすべて削除します。
  3. Split() メソッドを使用して、指定した区切り文字でデータを分割し、リストに格納します。
  4. リスト内の各行と各列を繰り返し処理する。
  5. Worksheet.Range[].Value プロパティを使用して、指定した Excel セルにデータを入力します。
  6. 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();
        }
    }
}

出力:
TXTtoEXCEL.png


無料の.NET Excelライブラリが提供するExcelファイル処理機能の詳細については、ドキュメントを確認してください:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?