你好,我想編寫一個程序,從下一行括號風格改變了Java程序 到結束行的括號風格像這樣括號的改變風格
公共類測試
{
public static void main(String [] args)
{
if (expr)
{
}
}
對此
public class Test {
public static void main(String [] args) {
if (expr) {
}
}
程序應該從用戶(通過 「輸入文件名:」 促使它們)在讀 包含要更改的程序的文件的名稱。如果打開的文件不能爲 ,則向用戶打印錯誤消息(「錯誤文件名」),並再次提示 輸入文件名,並將修改後的文件寫回到您從中讀取 的同一文件。您不能在打開 的同時打開文件進行閱讀。所以,你應該存儲要寫入到字符串的ArrayList的文件 行,然後將其寫入到文件後,你 關閉您用來讀取文件
這是掃描對象我到目前爲止寫了什麼,而且我遇到了錯誤。誰能幫助, 謝謝
import java.util.ArrayList;
import java.util.Scanner;
import java.io.File;
import java.io.PrintWriter;
public class Extension {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
String fileName = "";
System.out.println("Enter File Name: ");
fileName = input.next();
File f = new File("src/" + fileName);
do{
if(f.exists()){
}
else{
System.out.println("Bad filename");
System.out.println("Enter File Name: ");
fileName = input.nextLine();
}
} while (!(f.exists()));
ArrayList<String> fileRead = new ArrayList<String>();
String paran = ("{");
String newLine = "";
while(input.hasNextLine()) {
fileRead.add(input.nextLine());
}
input.close();
f.close;
//File f = new File("src/"+ fileName);
PrintWriter output = new PrintWriter(f);
output.print(fileRead.get(0)) ;
for(int i = 1; i < fileRead.size()-1 ; i++){
if(fileRead.get(i).equals("{")){
newLine = fileRead.get(i-1);
newLine += paran;
}
else
output.print(fileRead.get(i));
}
}
}
這會尋找任何捲曲在文件中使用大括號還是隻對Java編譯器有特定含義的文件?如果是後者,你必須真正理解你解析的內容。這不是一項簡單的任務。 –
不僅僅是對編譯器有特定含義的花括號,並將其更改爲下一行樣式 –
任何原因您將無法使用您的ide-of-choice的現有格式器? – Marvin