前提・実現したいこと
こんにちは。Java初心者ですがどなたかご教授お願い致します。
私は、Javaでタイピングソフト(単語を画面に出力して打鍵してもらうようなもの)を作っています。
そこで、利用者が自分で単語リストを作れるようにしようと思い、
#親指.dictionary #(語句),(読み) 分割,ぶんかつ ウィンドウズ,うぃんどうず
とすると、String型の配列(ここではoya_array)に下記の様に代入されるようにしたいと思っています。
/* oya_array[0] */ 分割 /* oya_array[1] */ ぶんかつ /* oya_array[2] */ ウィンドウズ /* oya_array[3] */ うぃんどうず
発生している問題
下記のソースコードでString型の配列arrayにある要素がString型の配列oya_arrayにすべて代入されていない
該当のソースコード
Java
1package bunkatu; 2 3import java.io.BufferedReader; 4import java.io.File; 5import java.io.FileNotFoundException; 6import java.io.FileReader; 7import java.io.IOException; 8 9public class Core { 10 public static String[] oya_array; 11 public static String[] getoya_array() { return oya_array; } 12 public static void main(String[] args) { 13 File oya = new File("親指.dictionary"); 14 15 try { 16 if(!(oya.exists())) { 17 oya.createNewFile(); 18 } 19 } catch(IOException e) { 20 e.printStackTrace(); 21 } 22 23 BufferedReader br = null; 24 try { 25 br = new BufferedReader(new FileReader(oya)); 26 } catch (FileNotFoundException e1) { 27 e1.printStackTrace(); 28 } 29 String array[] = null; 30 String str; 31 try { 32 str = br.readLine(); 33 System.out.println("arrayの出力"); 34 while(str != null) { 35 if(!(str == "")) { 36 try{ 37 if(!(str.charAt(0) == '#')) { 38 array = str.split(","); 39 for(String str2 : array) { 40 System.out.println(str2); 41 } 42 } 43 } catch(StringIndexOutOfBoundsException e) {} 44 } 45 str = br.readLine(); 46 } 47 } catch (IOException e) { 48 e.printStackTrace(); 49 } 50 System.out.println("oya_arrayの出力"); 51 oya_array = array.clone(); 52 for(String str2 : oya_array) { 53 System.out.println(str2); 54 } 55 try { 56 br.close(); 57 } catch (IOException e) { 58 e.printStackTrace(); 59 } 60 } 61} 62
#出力結果 arrayの出力 挨拶 あいさつ タイピング たいぴんぐ 電子計算機 でんしけいさんき oya_arrayの出力 電子計算機 でんしけいさんき
補足情報
Eclipse 4.7 Oxygen
Java8
私はプログラミング・質問初心者ですので、不足している情報や分かりにくい箇所があるようでしたら、後学のために指摘してくださると幸いです。
回答1件
あなたの回答
tips
プレビュー