CSV(コンマ区切り値)ファイルは、コンマで区切られたデータを含むプレーンテキストファイルです。あるアプリケーションから別のアプリケーションにデータをインポートまたはエクスポートするために広く使用されています。場合によっては、CSV と Excel の間での変換を行う必要があります。この記事では、Spire.XLS for .NET ライブラリーを使用して C# および VB.NET でこの機能を実現する方法を紹介します。
Spire.XLS for .NET をインストールします
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
C# および VB.NET で Excel を CSV に変換する
Excel を CSV に変換する手順は次のとおりです。
- Workbook クラスのインスタンスを作成します。
- Workbook.LoadFromFile() メソッドを使用して Excel ファイルをロードします。
- Workbook.Worksheets [index] プロパティを使用して、インデックスで目的のワークシートを取得します。
- XlsWorksheet.SaveToFile() メソッドを使用してワークシートをCSVとして保存します。 次のオーバーロードされた SaveToFile() メソッドのいずれかを選択できます。
- SaveToFile(string fileName, string separator)
- SaveToFile(string fileName, string separator, Encoding encoding)
- SaveToFile(string fileName, string separator, bool retainHiddenData)
- C#
- VB.NET
using Spire.Xls;
using System.Text;
namespace ConvertAWorksheetToCsv
{
class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを作成する
Workbook workbook = new Workbook();
//Excelファイルをロードする
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//ワークシートをCSVとして保存する
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8);
}
}
}
Imports Spire.Xls
Imports System.Text
Namespace ConvertAWorksheetToCsv
Class Program
Shared Sub Main(ByVal args() As String)
'Workbookクラスのインスタンスを作成する
Dim workbook As Workbook = New Workbook()
'Excelファイルをロードする
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'ワークシートをCSVとして保存する
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8)
End Sub
End Class
End Namespace
C# および VB.NET で CSV を Excel に変換する
CSV を Excel に変換する手順は次のとおりです。
- Workbook クラスのインスタンスを作成します。
- Workbook.LoadFromFile(string fileName, string separator, int startRow, int startColumn) メソッドを使用して CSV ファイルをロードします。
- Workbook.Worksheets [index] プロパティを使用して、インデックスで目的のワークシートを取得します。
- Worksheet.AllocatedRange プロパティを使用して、ワークシートの使用範囲にアクセスします。次に、CellRange.IgnoreErrorOptions プロパティを IgnoreErrorType.NumberAsText として設定し、範囲内の数値をテキストとして保存しながら、発生する可能性のあるエラーを無視します。
- CellRange.AutoFitColumns() および CellRange.AutoFitRows() メソッドを使用して列と行を自動調整します。
- Workbook.SaveToFile(string fileName、ExcelVersion version)メソッドを使用して CSV を Excel に保存します。
- C#
- VB.NET
using Spire.Xls;
namespace ConvertCsvToExcel
{
class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを作成する
Workbook workbook = new Workbook();
//CSVファイルを読み込む
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\ExcelToCSV.csv", ",", 1, 1);
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//ワークシートの使用範囲にアクセスする
CellRange usedRange = sheet.AllocatedRange;
//範囲内の数値をテキストとして保存するときのエラーを無視する
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;
//列と行を自動調整する
usedRange.AutoFitColumns();
usedRange.AutoFitRows();
//結果ファイルを保存する
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
}
}
}
Imports Spire.Xls
Namespace ConvertCsvToExcel
Class Program
Shared Sub Main(ByVal args() As String)
'Workbookクラスのインスタンスを作成する
Dim workbook As Workbook = New Workbook()
'CSVファイルを読み込む
workbook.LoadFromFile("C:\Users\Administrator\Desktop\ExcelToCSV.csv", ",", 1, 1)
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'ワークシートの使用範囲にアクセスする
Dim usedRange As CellRange = sheet.AllocatedRange
'範囲内の数値をテキストとして保存するときのエラーを無視する
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText
'列と行を自動調整する
usedRange.AutoFitColumns()
usedRange.AutoFitRows()
'結果ファイルを保存する
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013)
End Sub
End Class
End Namespace
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。