
Visual C#でRS-232のシリアル通信をするプログラムを作成しましたが、
受信データが文字化けを起こしてしまいます。
下のURLにソースを置いているので、どこが不味いのか教えてください。
http://www1.axfc.net/uploader/Sc/so/205741
よろしくお願いいたします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
言い方が悪かったのかなあ…。
「どのような文字を送ると、どのような文字になって出るのか」を書いて欲しかったのですが。
ただ、そのレベルの問題ではなさそうですね。
文字コードをいろいろ試しているようですが、何を送っているのか分からないのですか?
そうであればまず何を送っているか分かっているデータを受信してみるのが先です。
また、文字としてまともに見えないようですので、バイナリデータで考えた方が良いと思います。
No.2
- 回答日時:
まずどのように文字化けするのかを書いたほうが良いと思います。
この回答への補足
Shift_jis:・と漢字の文字化け
utf-8:・が表示されるのみ
utf-16:・とàが表示される
これで何か分かりますでしょうか?
No.1
- 回答日時:
ソース見たくないんで
SJISに変換して、送りましょう
文字化けは、C#だとユニコードで送って、受け側がSJISで表示とか・・・
良くあるパターンです
相手が制御機とかだとしたら、文字化けの原因は文字コードの不整合です
この回答への補足
ShiftJISも試してみましたが、やはり文字化けしました。
通信の相手はdsPIC30F4011です。
受信部のソースは以下のようになっています。
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
int dataLength = serialPort1.BytesToRead;
byte[] rcvbuf = new byte[dataLength];
serialPort1.Read(rcvbuf, 0, dataLength);
string ReceivedData = Encoding.GetEncoding("Shift_JIS").GetString(rcvbuf, 0, dataLength);
textBox2.AppendText(ReceivedData);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
- Outlook(アウトルック) 【 Windows 10 】アドレス帳に正しくインポートを完了させたい。 3 2023/04/23 13:41
- Excel(エクセル) Excelの操作方法を教えてください!頭文字2~8文字で特定の値に返す方法 8 2022/07/14 11:26
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- その他(プログラミング・Web制作) シリアル通信 2 2022/05/07 17:14
- Perl perlについての質問 2 2022/10/17 15:25
- Windows 10 Visual StudioとVisual C++ Build Toolsについて 1 2023/04/16 03:42
- HTML・CSS GETをPOSTに変更したところ 送信 不能です。 1 2022/04/10 17:31
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストフィールドの入力タイ...
-
「・・・から」の波線(?)が...
-
urlエンコードについて質問です...
-
Unicode規定の Zs (space separ...
-
ASP.NET TextBox 入力制限
-
ソースコード内のインデント方...
-
Excel VBA 見本通りに...
-
Firefoxでのテキストエリアに入...
-
ASCII文字列以外を検出する正規...
-
インデントのEBNFについて
-
ボタンコントロールのTEXT...
-
XMLを作成してもタグしか表示さ...
-
AfterEffectsでイージーイーズ...
-
H1タグに改行の<br>を使う
-
改行できる・できない入力ボッ...
-
HTMLでのリンク作成時に。
-
文字化けは、どうしたらいいの...
-
自分のサイトを開いた時にウィ...
-
ネットスケープでギリシャ文字...
-
FLASHで文字を書き順通り表示さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA 見本通りに...
-
C#のシリアル通信プログラムで...
-
ASP.NET TextBox 入力制限
-
JavascriptでIMEのON,OFF制御
-
JSONパース時に改行があるとエ...
-
ASCII文字列以外を検出する正規...
-
なぜtabによるインデントはいけ...
-
ローマ数字などの文字化け対策...
-
Eclipseの空白が変な...
-
ホームページ制作でコピーライ...
-
stray '\\240' in programのエ...
-
知っていたようで知らないことです
-
氏名の入力チェックに全角スペ...
-
インデントをスペースにするメ...
-
(再投稿) Word VBA マクロ スペ...
-
\\n って?
-
ソースコードの改行文字は何に...
-
半角空白チェックについて
-
テキストフィールドでの全角チ...
-
Pythonの勉強を始めました。バ...
おすすめ情報