相关疑难解决方法(0)

编码UTF8 C#进程

我有一个处理vbscript并生成输出的应用程序.

private static string processVB(string command, string arguments)
{
    Process Proc = new Process();
    Proc.StartInfo.UseShellExecute = false;
    Proc.StartInfo.RedirectStandardOutput = true;
    Proc.StartInfo.RedirectStandardError = true;
    Proc.StartInfo.RedirectStandardInput = true;
    Proc.StartInfo.StandardOutputEncoding = Encoding.UTF8;
    Proc.StartInfo.StandardErrorEncoding = Encoding.UTF8;
    Proc.StartInfo.FileName = command;
    Proc.StartInfo.Arguments = arguments;
    Proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //prevent console      window from popping up
    Proc.Start();
    string output = Proc.StandardOutput.ReadToEnd();
    string error = Proc.StandardError.ReadToEnd();

    if (String.IsNullOrEmpty(output) && !String.IsNullOrEmpty(error))
    {
        output = error;
    }
    //Console.Write(ping_output);

    Proc.WaitForExit();
    Proc.Close();

    return output;
}
Run Code Online (Sandbox Code Playgroud)

我想我已经设置了与编码属性相关的所有内容.processVB方法将获取命令作为VBscript文件及其参数.

C#方法processVB正在处理现在生成输出的VBScript文件,如下所示.

"?"

但我应该得到原文

"äåéö€"

我已正确设置编码.但我无法做到正确.

我究竟做错了什么?

c# encoding process utf-8

6
推荐指数
1
解决办法
6069
查看次数

标签 统计

c# ×1

encoding ×1

process ×1

utf-8 ×1