utf8编码问题C#,编写tex文件,并使用pdflatex编译
我用C#编写了下一个代码……它使用utf-8创建了一个tex文件……问题是,它似乎不是真正有效的utf-8文件,因为当我使用pdflatex时,它无法识别带有重音的字符。有人知道如何编写真正的UTF-8文件吗?当我使用TexmakerX创建具有相同latex代码的utf8文件时,pdflatex不会抱怨,因此问题一定是在生成过程中utf8编码问题C#,编写tex文件,并使用pdflatex编译,c#,utf-8,pdflatex,C#,Utf 8,Pdflatex,我用C#编写了下一个代码……它使用utf-8创建了一个tex文件……问题是,它似乎不是真正有效的utf-8文件,因为当我使用pdflatex时,它无法识别带有重音的字符。有人知道如何编写真正的UTF-8文件吗?当我使用TexmakerX创建具有相同latex代码的utf8文件时,pdflatex不会抱怨,因此问题一定是在生成过程中 StreamWriter writer = new StreamWriter("hello.tex", false, Enco
StreamWriter writer = new StreamWriter("hello.tex", false, Encoding.UTF8);
writer.Write(@"\documentclass{article}" + "\n" +
@"\usepackage[utf8]{inputenc}" + "\n" +
@"\usepackage[spanish]{babel}" + "\n" +
@"\usepackage{listings}" + "\n" +
@"\usepackage{fancyvrb}" + "\n" +
@"\begin{document}" + "\n" +
@"\title{asd}" + "\n" +
@"\maketitle" + "\n" +
@"\section{canción}" + "\n" +
@"canción" + "\n" +
@"\end{document}");
writer.Close();
这可能是缺少Unicode字节顺序标记(BOM)的问题。您可以使用自定义的:
这可能是缺少Unicode字节顺序标记(BOM)的问题。您可以使用自定义的:
using (StreamWriter writer =
new StreamWriter("hello.tex", false, new UTF8Encoding(true, true)))
{
}