• 締切済み

csvファイルを出力する簡単なプログラム

初心者です。 csvファイルを読み込んで、それを加工(列を増やして文字を決まった列を挿入)したcsvファイルを出力する簡単なプログラムを模索しているのですが、どのようなものを作ればいいのかわかりません。こういうものはどういう風に考えて作っていくものなのか、大まかに教えてもらえないでしょうか。まず、csvファイルを読み込むという作業をどのようにコンピュータにやらせればいいのでしょうか? ちなみに『やさしいJAVA』(初歩の方)は一律読破しました。 お願いします。

みんなの回答

  • yuki22
  • ベストアンサー率28% (8/28)
回答No.3

StringTokeniserをつかってみてください^^ わからなければまた補足回答いたします。 APIにのってます。

全文を見る
すると、全ての回答が全文表示されます。
  • nimua
  • ベストアンサー率21% (8/38)
回答No.2

CSV読み込み、書き出しって以外に面倒な処理がいりますよね。 シングルクォートの処理、改行文字の処理、データ中のカンマの処理などなど。 そこまでいらないなら、以下の流れがいいかなと。 1.ファイルを読み込む 2.行ごとを処理する 3.カンマごとに処理する 具体的にはNo1さんのリンクの先でお勉強を。 No1さんの言われる通り、検索はプログラミングする上で非常に重要です。 Javaを書ける人でも、何もかも出来るわけではないので、検索し吸収していきます。 そういう癖をつけると上達も早いですよ^^ 頑張りましょう~

sasakuri
質問者

お礼

仕事の片手間でやらなければならない作業なので、Googleの検索を思いつけませんでした。 とはいえ、いろいろ具体的に教えていただけますと助かります。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • nakahira
  • ベストアンサー率20% (2/10)
回答No.1

http://www.google.com/search?hl=ja&lr=lang_ja&q=csv+%93%C7%82%DD%8D%9E%82%DD%81%40java グーグルを利用すると0.19 秒で答えが出て来ました。 パソコン初心者なのでしょうが、検索することを覚えたほうが良いと思います。 プログラミングする上で、調べ物することは多いと思いますので、ここを利用するより、グーグルを使ったほうがいい場合があります。

sasakuri
質問者

お礼

早速ありがとうございます。 なんとなく分かりました

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 「得た値をCSV出力するJAVAプログラムを書きたい」

    「得た値をCSV出力するJAVAプログラムを書きたい」 固定したある点とクリックした点の距離は取得できました つまり、クリックするごとに2点間の距離は変わります 例えば 1回目:10cm 2回目:20cm 3回目:5cm とします 流れはクリック→10cmという値を取得→クリック→20cmという値を取得→・・・ するとCSVファイルには10,20,5という風に出力されるようにJAVAプログラムを書きたいです 色々調べたんですが、読み込みの方法がいまいちわかりません(全体的なこともですが・・・) データベースを読み込むとかはよく見かけるのですが。 また、実行したら勝手にCSVファイルが出来るのか? 下記のプログラムまでは出来ました import java.io.*; public static void main( String args[] ) { try { PrintWriter pw = new PrintWriter( new BufferedWriter( new FileWriter( "output.csv" ) ) ); pw.println( "kyori" ); System.out.println( "ファイルに書き込みました。" ); pw.close(); } catch( IOException exp ) { System.out.println( "入出力エラーです。" ); } } 何かアドバイスをお願いします。

  • CSVファイル読み込みについて

    Java初心者なので初歩的な質問をするかも知れませんが、ご勘弁ください。 今CSVファイルを読み込むプログラムを作っているのですが、 CSVファイルを列ごとに読み込みたいのです。(全体は読み込める) いろいろ調べましたが、全く方法がわかりません。 どうかご教授よろしくお願いします。

    • ベストアンサー
    • Java
  • ExcelのCSVファイル出力について

    Excelが出力したCSVファイルを扱うプログラムに関する質問です。 Windwosの[コントロールパネル]⇒[地域と言語のオプション]で、 小数点の記号を「.(ピリオド)」から「,(カンマ)」に変更しました。 するとExcelからCSVファイルを出力したときの各データの区切り文字が 「,(カンマ)」から「;(セミコロン)」に変わるようなのですが、 これに対応できるプログラムを作りたいと考えています。 CSVファイルの区切り文字は、Windowsのロケール情報として プログラム上から取得可能なのでしょうか?

  • EXCELファイルへCSVファイルから月間データをマクロで入力する

    EXCELファイルへCSVファイルから月間データをマクロで入力する お世話になります。 EXCELで月間の報告書を作成しています。 ひと月の作業内容を1日ずつ記載します。 そして、現在それとは別にグループウェアを使用しており、そちらにはスケジュールをCSVでエクスポートする機能があります。 ですので、グループウェアからCSVで出力されたデータをそのまま報告書の作業内容の列へ挿入できるようなマクロを作りたいと思っています。 ただ、CSVで出力されたものと報告書では月間の行の使い方が違うのでどのようにしてやろうかと悩んでいます。 CSVファイルの内容で使用したいのは「予定詳細」で、EXCELのE列に挿入したいと思っています。 エクスポートしたCSVの画像と、報告書のEXCELの画像を添付します。 説明が難しくてすみませんがお知恵をいただければと思います。 よろしくお願いします。

  • CSVファイルの出力

    こんにちは。 ただいまアクセスで商品の検索プログラムを作っていまして、入力した商品名に一致する商品コードと商品名をテーブルから抽出し、CSVファイルに出力したいのですが、どういった方法で出力すればいいのでしょうか?

  • MACに出力された拡張子CSVのファイルの加工

    今までWindowsのパソコンしか使った事がないので教えてください。 MACに出力されたCSVファイルを一部修正して、再度CSVファイルとして取り込みたいのですが、CSV出力されたファイルをMAC上で加工すると、拡張子のないファイルが新たに出来上がりました。 修正後のファイルをCSVファイルとして取り込みたいのですが、方法がわかりません。 よろしくお願いいたします。

    • 締切済み
    • Mac
  • マクロCSV出力

    Sheet1に入力されている値をCSVファイルに出力したいと思っております。 但し、特定のセルだけを取得して、1つのファイルに出力したいと思っています。 (1)D2~G2に入力されている値を取得 (2)E4~E10までと、E4~E10の最終列までの値を取得 (3)B11の値を取得 (4)A13~A列の最終行まで、A13~A列の最終行の最終列までの値を取得 (1)、(2)、(3)、(4)の値を取得して、1つのCSVファイルに出力するプログラムを作成したいと思っております。 (1)は1行目に出力 (2)は2行目~8行目に出力 (3)は9行目に出力 (4)は10行目以降に出力 出力の形式は ”TEST”,” ”,”SMP”のようにダブルクォーテーションで値を囲って出力したいと思っています。 値が入っていないセルは” ”,としたいと思っております。 サンプルを作成して頂けないでしょうか。

  • CSVで出力された予定表から必要な情報をEXCELファイルの対応箇所へ

    CSVで出力された予定表から必要な情報をEXCELファイルの対応箇所へマクロでコピーする お世話になります。 先ほど同じ内容で投稿したのですが画像が添付できませんでしたので、再度投稿させていただきます。 EXCELで月間の報告書を作成しています。 ひと月の作業内容を1日ずつ記載します。 そして、現在それとは別にグループウェアを使用しており、そちらにはスケジュールをCSVでエクスポートする機能があります。 ですので、グループウェアからCSVで出力されたデータをそのまま報告書の「作業内容」と「場所」の列の日付の対応する行へ挿入できるようなマクロを作りたいと思っています。 ただ、CSVで出力されたものと報告書では月間の行の使い方が違うのでどのようにしてやろうかと悩んでいます。 CSVファイルの内容から使用したいのは「予定詳細」「場所」で、EXCELのE列とF列に挿入したいと思っています。 エクスポートしたCSVの画像と、報告書のEXCELの画像を添付します。 説明が難しくてすみませんがお知恵をいただければと思います。 よろしくお願いします。

  • CSVファイルを , で句切って出力する

    同じ質問になってしまってすみません。 困り度を2ではなく3にしたかったので再掲示してしまいました。 よろしくお願いいたします。 次のような課題が出たのですが教えていただきたく書き込みしました。 皆様のお力をお貸しください。 (1)適当なフォルダにファイルを用意する(ファイルにはCSV形式で文字列が書いてある) (2)最初に文字列をキーボードから入力させる(文字列は半角で5文字まで、それ以外ならば繰り返し入力させる) ※ 指定したファイルがない場合は堤外を出力(try,catch) (3)フォルダのファイル読み込み、(2)で入力した文字列が含まれているCSVのカラムをファイルに出力(ファイルは新規作成 public class Match { public boolean matchString (String[] args) { // マッチング対象の文字列です。 String str = "​http://iwamode.net/index.html";//​ Pattern p = Pattern.compile("^https?://"); // 正規表現のコンパイル Matcher m = p.matcher(str); // 正規表現エンジンの生成 if (m.find()) { // java.util.regex.Matcher#find()メソッドは部分一致するかを判断します。 System.out.println("「http://」または「https://」から始まる文字列です。"); } else { System.out.println("「http://」または「https://」から始まる文字列ではありません。"); } Pattern p2 = Pattern.compile("\\.com"); Matcher m2 = p2.matcher(str); if (m2.find()) { return true; } return false; } } ----------------------------------------------------------- try{ File csv = new File("Kadai10.csv"); // CSVデータファイル BufferedReader br = new BufferedReader(new FileReader(csv)); // 最終行まで読み込む while (br.ready()) { String line = br.readLine(); // 1行をデータの要素に分割 StringTokenizer st = new StringTokenizer(line, ","); while (st.hasMoreTokens()) { // 1行の各要素を区切りで表示 System.out.println(st.nextToken() + ","); } System.out.println(); } br.close(); } catch (FileNotFoundException e) { // Fileオブジェクト生成時の例外捕捉 e.printStackTrace(); } catch (IOException e) { // BufferedReaderオブジェクトのクローズ時の例外捕捉 e.printStackTrace(); } -------------------------------------------------------------- System.out.println("半角5文字までの文字列を入力してください"); BufferedReader r = new BufferedReader(new InputStreamReader(System.in)); String str = r.readLine(); if(str.length() <= 5 && str.matches("[0-9a-zA-Z]")) { 上記の3つの部分ソースを使いプログラムを完成させたいんですがどのようにしたらいいでしょうか?

    • ベストアンサー
    • Java
  • mysqlのcsvファイル出力について

    今jspファイルでボタンを押すとサーバーにあるデータベースの結果をcsvファイルとして保存するファイルを作りました。 今、作業用のパソコンからテラタームを使い、リモート接続で作業をしています。 なので出力するcsvファイルをサーバーの方ではなく、作業用のパソコンに落としたいのですが、方法はないですかね? 今はjspのほうでSELECT * FROM テーブル名 INTO OUTFILE のコマンドをmysqlに送っています。 phpmyadminで接続してそこからcsvファイルを落とすと閲覧しているパソコンに落ちるようになってるのでそ それができたらなと思います。 何かいい方法はないでしょうか? よろしくお願いします。