Während des Entwicklungsprozesses können Sie die Konvertierung der Dateicodierung begegnen. Obwohl die Eclipse des Entwicklungsinstruments die Codierung umwandeln kann, ist es in einigen Fällen unpraktisch. Zum Beispiel war der ursprüngliche Code der Datei selbst GBK, muss aber jetzt in UTF-8 konvertiert werden. Wenn die Dateicodierung in Eclipse direkt an UTF-8 geändert wird, herzlichen Glückwunsch, sie ist verstümmelt, da sie nicht direkt von GBK in UTF-8 konvertiert werden kann, müssen wir die Codierung manuell konvertieren. Im Folgenden finden Sie eine Dateicodierungs -Conversion -Toolklasse.
Paket com.mikan.stuff; Import Java.io.file; import Java.io.FileInputStream; importieren java.io.fileoutputStream; Import Java.io.filenameFilter; importieren java.io.inputstream; importieren java.io.inputStreamReader; importieren java.io.outputstream; importieren java.io.outputStreamwriter; importieren java.nio.charset.charset; importieren java.nio.charset.unsupportedCharSetException; public class filecharsetConverter {public static void main (String [] args) löst Ausnahme aus {convert ("d: //stuff//src//main//java//com/mikan//stuff//test.txt", "gbk", "utf-8", New Filename, {@override boole, acting (| name.endswith ("txt"); } / ** * Die angegebene Datei oder das angegebene Verzeichnis in die angegebene Codierung * * @param Dateiname * zu konvertiert werden * @param fromCharSetName * Codierung der Quelldatei * @param tocharSetName * codieren, um konvertiert zu werden. Datei (Dateiname), from CharSetName, toCharsetName, null); } / ** * Konvertieren Sie die angegebene Datei oder das angegebene Verzeichnis in die angegebene Codierung * * @param -Datei * Datei oder Verzeichnis, die konvertiert werden soll from CharSetName, toCharsetName, null); } / ** * Konvertieren Sie die angegebene Datei oder das angegebene Verzeichnis in die angegebene Codierung * * @param -Datei * Datei oder Verzeichnis, die konvertiert werden soll FileNameFilter Filter) löst eine Ausnahme aus {convert (neue Datei (Dateiname), from CharSetName, toCharSetName, Filter); } / ** * Konvertieren Sie die angegebene Datei oder das angegebene Verzeichnis in die angegebene Codierung * * @param -Datei * Datei oder Verzeichnis, die konvertiert werden soll FileNameFilter Filter) löst die Ausnahme aus {if (file.isdirectory ()) {file [] filelist = null; if (filter == null) {filelist = file.listfiles (); } else {filelist = file.listfiles (filter); } für (Datei f: filelist) {convert (f, from CharSetName, toCharsetName, filter); }} else {if (filter == null || filter.accept (file.getParentFile (), file.getName ())) {String fileContent = getFileContentFromCharset (Datei, frageSetName); SaveFile2CharSet (Datei, toCharsetName, fileContent); }}} / ** * Lesen Sie die Datei in der angegebenen Codierung und geben Sie den Dateiinhalt zurück * * @param * Datei, die konvertiert werden sollen Nicht unterstütztes Charakter (from CharSetName); } InputStream inputStream = new FileInputStream (Datei); InputStreamReader Reader = New InputStreamReader (InputStream, FromCharSetName); char [] chs = new char [(int) file.length ()]; Reader.read (CHS); String str = new String (CHS) .trim (); reader.close (); return str; } / ** * Textdatei in einer angegebenen Codierungsmethode schreiben. Die Existenz überschreibt * * @Param -Datei * Datei zu schreiben * @param tocharsetName * codieren, um konvertiert zu werden Neue nicht unterstützte Charakter (toCharsetName); } OutputStream outputStream = new FileOutputStream (Datei); OutputStreamWriter OUTWRITE = neuer Ausgangsstreamwriter (OutputStream, TOCHARSETNAME); Outwrite.Write (Inhalt); Outwrite.close (); }}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.