程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> io流-如何理解這個java程序

io流-如何理解這個java程序

編輯:編程綜合問答
如何理解這個java程序

package exercise_9;
import java.util.*;
import java.io.*;

public class Exercise9_16 {
/**Main method*/
public static void main(String[] args) throws Exception {
// Check command line parameter usage
if (args.length != 1) {
System.out.println(
"Usage: java Exercise9_16 filename");
System.exit(0);
}

// Check if source file exists
File sourceFile = new File(args[0]);
if (!sourceFile.exists()) {
   System.out.println("Source file " + args[0] + " not exist");
   System.exit(0);
}

StringBuilder buffer = new StringBuilder();
Scanner input = new Scanner(sourceFile);

while (input.hasNext()) {
  String s = input.nextLine();//一行行輸入
  String s1 = s.trim();//把多出來的空格都刪掉
  System.out.println(s1);
  if (s1.charAt(0) == '{') {
    buffer.append(" {");
    if (s1.length() > 1) buffer.append("\r\n" + s.replace('{', ' '));
  }
  else
    buffer.append("\r\n" + s);
}

input.close();

// Write buffer into the file
PrintWriter output = new PrintWriter(sourceFile);
output.print(buffer.toString());
output.close();

}
}


最佳回答:


package exercise_9;
import java.util.*;
import java.io.*;

public class Exercise9_16 {
/**Main method*/
public static void main(String[] args) throws Exception {
// Check command line parameter usage
if (args.length != 1) //判斷輸入的參數是否是一個, 如果不是,則打印下面信息
System.out.println(
"Usage: java Exercise9_16 filename");
System.exit(0); //然後退出程序
}

// Check if source file exists
File sourceFile = new File(args[0]); //創建一個以參數名為文件名的文件
if (!sourceFile.exists()) { // 判斷文件是否存在 ,如果不存在 則打印一下信息 ,退出程序
System.out.println("Source file " + args[0] + " not exist");
System.exit(0);
}

StringBuilder buffer = new StringBuilder(); // 創建一個字符串容器
Scanner input = new Scanner(sourceFile); //掃描文件

while (input.hasNext()) { //判斷文件內容是否存在,
String s = input.nextLine();//一行行輸入 //把文件內容讀入 s 字符串中
String s1 = s.trim();//把多出來的空格都刪掉 //把s字符串中的空格去掉
System.out.println(s1); // 打印s1
if (s1.charAt(0) == '{') { // 判斷字符串s1中第一個字符是否為‘{’
buffer.append(" {"); // 如果是 ,則向字符串容器中添加 ‘{’
if (s1.length() > 1) buffer.append("\r\n" + s.replace('{', ' ')); // 如果s1的長度大於1, 則向字符串容器中添加換行及下行首位置,把s裡‘ 用‘{換
}
else
buffer.append("\r\n" + s); // 否則buffer字符串容器添加換行 及首位置, s字符串
}

// Write buffer into the file
PrintWriter output = new PrintWriter(sourceFile); // 輸出流 把先前的文件 連接一條管道 即輸出流
output.print(buffer.toString()); // 輸出buffer容器裡的字符
output.close();
}
}

希望對你有幫助 ,謝謝

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved