Java用空格读入

时间:2015-02-15 21:51:32

标签: java function methods logic procedure

我有一个简单的程序,涉及保存到文本文件/ 2D数组并从中读取。问题是存储在2D阵列中的字符串可能包括空格。我似乎无法找到一种方法来读取/写入忽略空格但仍然包含它们的文件。我可以对这两个功能做出哪些改变?

从文件中读取:

    public static void getArrayData(String [][] array){


      try {
         Scanner scan2 = new Scanner(new File("arrayData.txt"));


         for(int i=0; i<array.length;  i++)
         {
            for(int j=0; j<array[i].length; j++)
            {


              if ( ! scan2.hasNext() )  
                  return; 

               array[i][j]=scan2.next(); 

            } 


         }


      } 

      catch (FileNotFoundException e)
         { 
         e.printStackTrace(); 
         }    

   }

写入文件:

   public static void Save(String [][] array){

      try {
         PrintWriter writer = new PrintWriter(new File("arrayData.txt"));

         for(int x=0; x<array.length; x++){
            for(int y=0; y<array[x].length; y++){
               writer.write(String.valueOf(array[x][y] + " "));
            }
            writer.println(); 
         }

         writer.flush();  
         writer.close();        



      } 
      catch (FileNotFoundException e) 
         {      
         e.printStackTrace();
         }


   }

解决方案越简单越好,因为我仍然是非常新手。

提前致谢

1 个答案:

答案 0 :(得分:1)

使用nextLine代替next来阅读整行。

array[i][j]= scan2.nextLine();