テキストを入力し、いくつかの関数を使用して並べ替えるプログラムがあります。テキストは形式に関係なく読み取り可能である必要がありますが、拡張ASCIIエンコーディングに保存されたファイルをインポートすると、127を超える文字は無視されます。周りを見回すと、これを克服する方法がわかりません。ファイルはUTF-8とUnicodeで正常に読み取られます。文字列をUTF-8に変換しようとしましたが、問題の文字は、代わりに形のような疑問符として表示されます。値が正しいことがわかります。ûの場合は0xBFですが、値として解釈されていません。
誰かがここで私を助けてくれますか、私はこれまでこの種のことで多くの仕事をしたことがありません。それが助けになるなら、私はC#で働いています。
変換するための現在のコードは次のようになります。
System.Text.UTF8Encoding u = new System.Text.UTF8Encoding();
byte[] asciiBytes = Encoding.UTF8.GetBytes(sd);
sd = u.GetString(asciiBytes);
文字列はどこにありますかsd
。この文字列をインポートするとき、テキストエンコーディングを指定しません。
string input = File.ReadAllText(fname);
...
parser(input);