У меня есть пара вопросов. Я пытаюсь отформатировать текст в простой формат для чтения. Я в настоящее время:Форматирование текста
MAC11053hrsECO20133hrsECO20233hrsANT20003hrsPSY20123hrsSYG20003hrsACG20213hrsACG20713hrsCGS21003hrsECO20133hrsECO20233hrsECO34013hrsMAC22333hrsSTA20233hrsACG31313hrsECO34113hrsFIN34033hrsMAN30253hrsMAR30233hrsBUL31303hrsGEB33753hrsMAR32033hrsACG31413hrsACG33613hrsACG44013hrsACG46513hrsACG48033hrsMAN47203hrsACG49033hrsACG49043hrsACG49703hrsENC11013hrsMAC11053hrsECO20133hrsENC11023hrsECO20233hrsACG20213hrsSPC16083hrsACG20713hrsECO34013hrsCGS21003hrsACG31313hrsFIN34033hrsMAR30233hrsECO34113hrsMAN30253hrsACG31413hrsACG33613hrsBUL31303hrsACG44013hrsGEB33753hrsMAR32033hrsACG46513hrsACG48033hrsMAN47203hrs
Я хочу:
MAC1105 3hrs
ECO2013 3hrs
ect.
Пока мой код отстой! Я пытался понять это, но я не могу использовать какие-либо другие сообщения для решения того, что кажется довольно простой проблемой. Я, по сути, читаю каждую строку, а затем пытаюсь вставить " "
и "\n"
для форматирования вывода. Я хотел использовать цикл for int d < line.length();
, но кажется, что мое понимание совершенно неверно. В моем тексте doc он показывает все эти коды курса примерно в 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