1

単語ドキュメントからUnicode文字を読み込もうとしましたが、記号(????)を取得しました。

ここに私のコード:

   Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
            object miss = System.Reflection.Missing.Value;
             object enc = Microsoft.Office.Core.MsoEncoding.msoEncodingEUCJapanese; 
            object path = @"C:\Users\file.doc"
            object readOnly = true;
            Microsoft.Office.Interop.Word.Document docs = word.Documents.Open(ref path, ref miss, ref readOnly, ref miss, ref miss,
                ref miss, ref miss, ref miss, ref miss, ref miss, ref enc, ref miss, ref miss, ref miss, ref miss, ref miss);
            string totaltext = "";
            for (int i = 0; i < docs.Paragraphs.Count; i++)
            {
                totaltext += " \r\n " + docs.Paragraphs[i + 1].Range.Text.ToString();

                Console.WriteLine(totaltext);
            }
           // Console.WriteLine(totaltext);
            docs.Close();
            word.Quit();
4

1 に答える 1

2

コメントを考えると、問題はConsole.WriteLine.

代わりにファイルへの書き込みを試してください:

// This will use Encoding.UTF8 by default.
using (var writer = File.CreateText("test.txt"))
{
    for (int i = 0; i < docs.Paragraphs.Count; i++)
    {
        writer.WriteLine(docs.Paragraphs[i + 1].Range.Text.ToString());
    }
}

次に、エンコーディングとして UTF-8 を指定して、メモ帳でファイルを開きます。すべてが正しく表示されると思います。

于 2013-01-02T22:05:15.500 に答える