31. oktober 2010 - 22:05Der er
4 kommentarer og 1 løsning
Kode forklaring
Hey eksperter.
Er der nogle der kan fortælle mig hvad der sker i koden. specielt hvorfor der står out = new PrintWriter(new FileWriter(filename + ".out")); hvad betyder værdierne inde i FileWriter(filename + ".out"
import java.io.*; import java.util.*;
public class Convert {
private static BufferedReader in = null; private static String filename = null; private static PrintWriter out = null;
public static void main(String[] args) { if (args.length > 0) { filename = args[0]; } else { System.exit(0); }
try { in = new BufferedReader(new FileReader(filename)); out = new PrintWriter(new FileWriter(filename + ".out")); String l = in.readLine(); while (l != null) { out.print("System.out.println(\""); for (int i = 0; i < l.length(); i++) { char c = l.charAt(i); if (c == '"') { out.print("\\"); } out.print(c); } out.println("\");"); l = in.readLine(); } out.close(); in.close(); } catch (Exception e) { } } }
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
new FileWriter(filename + ".out") opretter en ny FileWriter, som skriver til en fil med samme filnavn som indputtet, bare at der er tilføjet .out i enden. Så hvis input filen hedder "test.txt", hedder output filen: "test.txt.out".
Ellers ser det ud til at koden skal lave et slags script, hvor hver linje indeholder: System.out.orintln(" linjeindhold "); I tillæg sørge den for at sætte backslash ( \ ) forand alle "-tegn
Men hvorfor ville den kun udskrive HTML siden jeg ønsker konverteret korrekt hvis jeg angiver .out Burde koden ikke kunne gøre det uden at tilføje + ".out"
Vil du overskrive den originale fil? Da vil du blive nød til at læse hele indholdet fra den originale fil ind i memory (i eksempeltvis en String), lukke filen, og til sidst konvertere og overskrive den.
Du kan ikke have to streams åben ned i samme fil på samme tid.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.