簡體   English   中英

Java-從JTextField獲取日語並將其保存到文件

[英]Java - Get Japanese from JTextField and save to File

我試圖從JTextField (使用getText()方法)獲取日語輸入,並將其保存到文件中。 我相信它確實會從JTextField獲得日文格式,因為我可以append() String append()JTextArea並將其以正確的日文格式顯示。

但是,當我嘗試寫入文件時,它只會變成亂碼! 我嘗試使用用StandardCharsets.UTF_8實例化的OutputStreamWriter ,並且嘗試使用普通的FileOutputStream ,在其中我通過調用String上的getBytes(StandardCharsets.UTF_8)發送字節。 在這兩種情況下,生成的文件看起來都更像以下內容:

日本語�難������学����ら�日本��む

自然,這不是我想要的。 有誰知道這個問題可能是什么?

我很確定您正在使用ISO-8859-1(而不是UTF-8)創建文件。 我還推斷您正在使用Eclipse,因為您之前有問題。

更改工作區設置

窗口->首選項->常規->工作區:UTF-8

在此處輸入圖片說明

所有內容類型的默認編碼

在此處輸入圖片說明

識別TestClass

這是我用來測試理論的課程

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;

public class test {
    public static void main(String[] args) throws IOException {
            File fileDir = new File("test.txt");
            String japanese = "路権ち點節ヤトツ限聞ド勇売質タカア";
            Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileDir)));
            out.append(japanese);
            System.out.println(japanese);
            out.flush();
            out.close();
    }
}

具有不同設置的輸入/輸出

路権ã¡ç¹ç¯ã¤ããéèãå売質ã¿ã«ã¢è·¯æ¨©ã¡ç¹ç¯ã¤ããéèãå売質ã¿ã«ã¢

OutputFileUTF8: 路権ち點節ヤトツ限聞ド勇売質タカア限聞ド勇売質タカア

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM