我有幾個問題。我試圖將我的文本格式化爲一種簡單的格式來讀取。我目前有:格式化文本
MAC11053hrsECO20133hrsECO20233hrsANT20003hrsPSY20123hrsSYG20003hrsACG20213hrsACG20713hrsCGS21003hrsECO20133hrsECO20233hrsECO34013hrsMAC22333hrsSTA20233hrsACG31313hrsECO34113hrsFIN34033hrsMAN30253hrsMAR30233hrsBUL31303hrsGEB33753hrsMAR32033hrsACG31413hrsACG33613hrsACG44013hrsACG46513hrsACG48033hrsMAN47203hrsACG49033hrsACG49043hrsACG49703hrsENC11013hrsMAC11053hrsECO20133hrsENC11023hrsECO20233hrsACG20213hrsSPC16083hrsACG20713hrsECO34013hrsCGS21003hrsACG31313hrsFIN34033hrsMAR30233hrsECO34113hrsMAN30253hrsACG31413hrsACG33613hrsBUL31303hrsACG44013hrsGEB33753hrsMAR32033hrsACG46513hrsACG48033hrsMAN47203hrs
我想:
MAC1105 3hrs
ECO2013 3hrs
ect.
到目前爲止我的代碼吸!我一直在試圖弄清楚這一點,但我似乎無法使用任何其他帖子來解決似乎是一個相當簡單的問題。我基本上正在閱讀每一行,然後嘗試插入" "
和"\n"
以格式化輸出。我想使用for循環int d < line.length();
,但似乎我的理解完全錯誤。在我的文本文檔中,它顯示了大約8行所有這些課程代碼,但它似乎都在同一行(我認爲)。我如何設置?
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;
public class Indentation {
public static void main(String[] args) throws IOException {
File inFile = new File("/Users/Richard/Desktop/resources/Out.txt");
File outFile = new File("/Users/Richard/Desktop/resources/finally.txt");
FileWriter fWriter = new FileWriter(outFile);
PrintWriter pWriter = new PrintWriter(fWriter);
Scanner sc = new Scanner(inFile);
while (sc.hasNextLine()) {
String line = sc.nextLine();
String s = line;
StringBuilder sb = new StringBuilder(s);
for (int d = 1; d < 61; d++) {
sb.insert(d * 7, " ");
sb.insert(d * 12, "\n");
}
pWriter.print(sb.toString());
System.out.println(sb.toString());
}
sc.close();
}
}
考慮MAC11053hrs,MAC始終是3個位數代碼? 11005總是4?時間不超過9? – Thrasher