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

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

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

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

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

0回答

1022閲覧

CSVを読み込むjavaのサンプルプログラムで、行ごとにどのような処理をしているのか教えていただきたいです。

CrazySora_JP

総合スコア18

CSV

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

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2021/01/24 05:38

前提・実現したいこと

javaで、csvファイルを読み込み出力するサンプルプログラムがあるのですが、try文より下から最後までの処理内容がわかりません。
各行の処理の内容を教えていただきたいです。

初心者すぎる質問で申し訳ないのですが、お願い致します。

javaのサンプルプログラム

java

1import java.io.*; 2public class Rep410_1 { 3 public static void main(String[] args) throws Exception{ 4 BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream("namelist.csv"))); 5 6 try{ 7 String line; 8 int linen = 0; 9 String[] arr = null; 10 11 while((line = br.readLine()) != null) { 12 if(linen == 0){ 13 arr = line.split(","); 14 } 15 else{ 16 System.out.println("--------------------------------"); 17 System.out.println("data " + linen); 18 String[] data = line.split(","); 19 for(int r=0 ; r<data.length ; r++){ 20 System.out.println(arr[r] + ":" + data[r]); 21 } 22 } 23 linen++; 24 } 25 }catch(Exception e){ 26 e.printStackTrace(); 27 }finally{ 28 try{ 29 br.close(); 30 }catch(Exception e){ 31 e.printStackTrace(); 32 } 33 }

###csvファイルの内容

csv

1no,name,age,gender,bloodtype 21,robby,45,M,A 32,katty,21,F,B 43,leo,23,M,AB 54,alice,18,F,O 65,robby,30,M,B

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

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

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

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

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

dodox86

2021/01/24 06:45

実際に実行してみましたか? 更に、デバッガーを使って1行ごとに実行(ステップ実行)してみましょう。
CrazySora_JP

2021/01/24 07:13

VScodeでコーディングしていたのですが、今回のプログラムはcsvファイルを読み込む必要があるためか実行できません。 ターミナルからコンパイルして実行させると出来ます。 ターミナルからでもステップ処理はできるのでしょうか?
dodox86

2021/01/24 07:22

Visual Studio Codeでデバッグできる環境にあるのであれば、CSVファイルの有無に関わらず使えるはずですが。 new FileInputStream("namelist.csv") でnamelist.csvファイルのPATHをフルパスで指定していないので、ファイルが見つからず、読み取れなくて例外で終わってしまっているのではないですか?
CrazySora_JP

2021/01/24 07:34 編集

「相対パスをコピー」して貼り付けたところ、実行できました。 お手数をおかけして申し訳ありません。
dodox86

2021/01/24 07:35

そもそも私が言いたいことは、「各行の処理の内容を教えていただきたいです。」と言う丸投げ感のある質問はやめて、まず自分で実行してコードの内容を理解しましょうということです。 > Exception in thread "main" java.io.FileNotFoundException: \kouki_4\Rep410\namelist.csv 「ファイルが見つからない」とエラーは言っています。 "\kouki_4\Rep410\namelist.csv" 本当にこれがフルPATHでしょうか? "C:\Users\kouki_4\ ..." とかではないのでしょうか。
CrazySora_JP

2021/01/24 07:39

パスの指定が間違っていました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問