質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

foreach

foreachは、List・Collection・Arrayといったデータ構造の各要素に対して繰り返し処理を実行するために扱われる、制御構造の構文です。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

Q&A

解決済

1回答

3715閲覧

【Ruby】csv読み込みのCSV.foreachについて

kaori_oka

総合スコア176

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

foreach

foreachは、List・Collection・Arrayといったデータ構造の各要素に対して繰り返し処理を実行するために扱われる、制御構造の構文です。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

0グッド

0クリップ

投稿2020/01/15 01:36

編集2020/01/15 01:49

前提・実現したいこと

csvデータを読み込み、その取得したデータを使用するプログラムを組みたいと思い、
まずはミニマムで実装したいと思っているのですが序盤で躓いております。

発生している問題・エラーメッセージ

console

1Traceback (most recent call last): 2 12: from ./csvtest.rb:2:in `<main>' 3 11: from C:/Ruby26-x64/lib/ruby/2.6.0/csv.rb:509:in `foreach' 4 10: from C:/Ruby26-x64/lib/ruby/2.6.0/csv.rb:657:in `open' 5 9: from C:/Ruby26-x64/lib/ruby/2.6.0/csv.rb:510:in `block in foreach' 6 8: from C:/Ruby26-x64/lib/ruby/2.6.0/csv.rb:1236:in `each' 7 7: from C:/Ruby26-x64/lib/ruby/2.6.0/csv.rb:1236:in `each' 8 6: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:303:in `parse' 9 5: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:779:in `parse_quotable_loose' 10 4: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:28:in `each_line' 11 3: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:28:in `each_line' 12 2: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:31:in `block in each_line' 13 1: from C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:818:in `block in parse_quotable_loose' 14C:/Ruby26-x64/lib/ruby/2.6.0/csv/parser.rb:879:in `parse_quotable_robust': Illegal quoting in line 1. (CSV::MalformedCSVError)

該当のソースコード

ruby

1require "csv" 2CSV.foreach("testtest.csv") do |row| 3 # 行に対する処理 4 p row 5end

csvファイルはrubyファイルとと同階層に配置しました。

試したこと

rubyでcsvデータを読み込む系記事を2つともミニマム状態を試してみましたが動作しませんでした。
なので、なにか自分のやり方に問題があるのではないかと思いまして質問を投稿してみました。

参考記事

RubyでCSVファイルの読み込み・書き込みをする
【Ruby】よく使う、CSVライブラリを使ったCSV操作

補足情報(FW/ツールのバージョンなど)

  • win10
  • powershell

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

`parse_quotable_robust': Illegal quoting in line 1. (CSV::MalformedCSVError)

エラーメッセージのとおりです。もとのCSVのフォーマットが、CSVで処理できるものではありません。

投稿2020/01/15 01:48

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kaori_oka

2020/01/15 01:58

csvをエクセルでなく、プレーンテキスト(メモ帳)で開くとカンマ区切りではなく、タブ区切りだったため、カンマ区切りに直し解決しました! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問