C# 如何在控制台中正确书写英文抄本?
我想在控制台上写英文抄本 在调试器中,我有一个C# 如何在控制台中正确书写英文抄本?,c#,console,console-application,transcription,C#,Console,Console Application,Transcription,我想在控制台上写英文抄本 在调试器中,我有一个sədʒest 但在控制台中,我有s??d?est 如何解决这个问题?谢谢 向上 获取转录的客户端 class TranslationFormattedResult { public string Transcription { get; set; } public List<string> TranslatedWordList = new List<string>();
sədʒest
但在控制台中,我有s??d?est
如何解决这个问题?谢谢
向上
获取转录的客户端
class TranslationFormattedResult
{
public string Transcription { get; set; }
public List<string> TranslatedWordList = new List<string>();
}
class TranslatorClient
{
private TranslationServiceSoapClient _client = new TranslationServiceSoapClient("TranslationServiceSoap");
public async Task<TranslationFormattedResult> GetTranslationAsync(string word)
{
var result = await _client.GetTranslationAsync("er", "General",
word,
lang: "ru",
limit: 3000,
useAutoDetect: true,
key: "",
ts: "MainSite",
tid: "");
var translationResult = new TranslationFormattedResult {Transcription = await GetTranscriptionAsync(result)};
return translationResult;
}
private async Task<string> GetTranscriptionAsync(TranslationResult result)
{
var task = new Task<string>(() =>
{
string pr = null;
string pattern = "\\[.+\\]";
var match = Regex.Match(result.result, pattern);
if(match.Success)
{
pr = match.Value.Trim('[', ']');
}
return pr;
});
task.Start();
return await task;
}
}
这是俄文吗
如果是,请尝试在命令行中运行chcp 866
参考这个
这个答案还表明可能需要选择特定(或至少不同)的字体(不确定这是否适用于俄语)这是俄语吗
如果是,请尝试在命令行中运行chcp 866
参考这个
这个答案还表明可能需要选择特定(或至少不同)字体(不确定这是否适用于俄语)您应该:
outpunecoding
设置为Unicode
:Console.outpunecoding=Encoding.Unicode代码>
Consolas
控制台中的结果是: 您应该:
outpunecoding
设置为Unicode
:Console.outpunecoding=Encoding.Unicode代码>
Consolas
控制台中的结果是:
这可能是控制台的问题,而不是您的程序的问题。如果你想确保它正确显示,你可能需要一个GUI而不是控制台。你能显示一些代码吗?这可能是控制台的问题,而不是你的程序的问题。如果你想确保它正确显示,你可能需要一个GUI而不是控制台。你能显示一些代码吗?我有英文版的windows。我正在尝试使用所有编码。我没有任何好的结果。@Victor说清楚,您在命令行中使用过这个命令吗?除非控制台知道要使用哪个代码页,否则我认为它无法正确显示应用程序的输出。我有英文windows版本。我正在尝试使用所有编码。我没有任何好的结果。@Victor说清楚,您在命令行中使用过这个命令吗?除非控制台知道要使用哪一个代码页,否则我认为它无法正确显示应用程序的输出。@Victor仅供参考显然,您可能需要注意MS的unicode实现,根据评论员的回答:(无法保证这一点的可信度,因为没有提供权威来源作为参考——只是提醒您注意,以防出现问题。)@Victor just FYI显然,您可能需要注意MS的unicode实现,根据评论人对这一答案的评论:(无法保证这一点的可信度,因为没有提供权威来源作为参考——只是提醒您注意,以防出现问题。)
class Program
{
static void Main(string[] args)
{
//this works
var client = new TranslatorClient();
var ts = client.GetTranslationAsync("suggest")
.ContinueWith(r =>
{
var transcription = r.Result.Transcription;
Console.OutputEncoding = Encoding.Unicode;
Console.WriteLine(transcription);
Console.WriteLine("press any key");
Console.ReadKey();
}
);
ts.Wait();
}
}
class Program {
static void Main( string[ ] args ) {
Console.OutputEncoding = Encoding.Unicode;
Console.WriteLine( "səˈdʒest" );
}
}