【发布时间】:2016-04-18 14:34:40
【问题描述】:
我正在使用 setlocale(LC_ALL,"Portuguese") 所以我的程序可以从文本文件中读取巴西葡萄牙语口音世界,如“joão”并在屏幕上打印,它可以很好地用于此目的。但是当我尝试从键盘输入像“joão”这样的单词并使用gets()或scanf()时,保存的字符串与输入不同。有什么建议吗?
【问题讨论】:
-
语言环境不会直接影响您可以输入的内容。您可能希望输出为 UTF-8(或至少让终端和语言环境同意),但对于输入,它在很大程度上取决于输入层。无论如何,我不认为
"Portuguese"是一个有效的语言环境;试试pt_BR.UTF-8。 -
您使用哪个源字符集和哪个环境字符集?哪种编码?您的终端使用哪个?您使用哪些功能进行输入/输出?等
-
@tripleee 感谢您的帮助。这适用于键盘输入问题,但无法读取文本文件中的文字。
-
无法访问文件或对其内容的充分描述,也无法读取无法读取的代码,我认为我们无法在此处添加任何内容。如果您需要详细的帮助,请使用相关的详细信息更新您的问题。回答@Olaf 的问题将是一个好的开始,但可能还不够。
-
@Olaf 我不确定如何回答所有这些问题,抱歉我缺乏知识。我只能说文本文件根据notepad++编码是ASCI,我使用的是windows 7 32bit,dev c
标签: c