3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PowerShellでCSVをJSONに変換する方法

Posted at

はじめに

こんにちは!今回は、PowerShellを使ってCSVファイルをJSONファイルに変換する方法をご紹介します。この方法は、データ形式の変換が必要な場合や、CSVデータをJSONを扱うアプリケーションで使用したい場合に非常に役立ちます。

image.png

準備

まず、変換したいCSVファイルがあることを確認してください。この例では、data.csvというファイル名を使用します。

data.csvの例

以下のような内容のdata.csvファイルを用意したと仮定しましょう:

Name,Age,City
John Doe,30,New York
Jane Smith,25,Los Angeles
Mike Johnson,35,Chicago

この CSV ファイルには、名前、年齢、都市の情報が含まれています。

PowerShellスクリプト

以下のPowerShellスクリプトを使用して、CSVをJSONに変換できます:

# CSVファイルを読み込む
$csvData = Import-Csv -Path "data.csv"

# CSVデータをJSON形式に変換
$jsonData = $csvData | ConvertTo-Json

# JSONデータをファイルに出力
$jsonData | Out-File "output.json" -Encoding UTF8

スクリプトの説明

  1. Import-Csv コマンドレットを使用して、CSVファイルを読み込みます。
  2. ConvertTo-Json コマンドレットを使用して、CSVデータをJSON形式に変換します。
  3. Out-File コマンドレットを使用して、変換されたJSONデータをファイルに出力します。

使用方法

  1. 上記のスクリプトを convert_csv_to_json.ps1 のような名前で保存します。
  2. PowerShellを開き、スクリプトが保存されているディレクトリに移動します。
  3. 以下のコマンドを実行してスクリプトを実行します:
.\convert_csv_to_json.ps1
  1. スクリプトが実行されると、同じディレクトリに output.json ファイルが作成されます。

変換結果の例

上記のdata.csvを変換すると、以下のようなoutput.jsonファイルが生成されます:

[
  {
    "Name": "John Doe",
    "Age": "30",
    "City": "New York"
  },
  {
    "Name": "Jane Smith",
    "Age": "25",
    "City": "Los Angeles"
  },
  {
    "Name": "Mike Johnson",
    "Age": "35",
    "City": "Chicago"
  }
]

注意点

  • CSVファイルのエンコーディングが UTF-8 でない場合は、Import-Csv コマンドレットに -Encoding パラメータを追加して適切なエンコーディングを指定してください。
  • 大きなCSVファイルを処理する場合は、メモリ使用量に注意してください。必要に応じて、データを分割して処理することをお勧めします。

まとめ

このように、PowerShellを使用してCSVファイルをJSONファイルに簡単に変換できます。この方法は、データ形式の変換が必要な場合や、異なるシステム間でデータを移行する際に非常に便利です。

実際のCSVデータ例とその変換結果を見ることで、プロセスがより明確になったと思います。ぜひ自分のデータで試してみてください!

質問やフィードバックがあれば、コメントでお知らせください。

3
1
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
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?