2012-01-31 3 views
2

少し質問があります。SerialPort.ReadLineプロパティの使用

シリアルポートからデータを読み取る必要があります。データは1行ずつ表示されます(データ+入力を意味します) serialPortプロパティの新しい行を以下のように設定する必要はありますか?

SerialPort sp = new SerialPort(); 
sp.NewLine = "\r"; 
sp.ReadLine(); 

改行プロパティの値は何ですか? よろしくお願いいたします。

答えて

2

使用しているプロトコルによって異なります。これは、これが部品の送受信に関する合意の対象であることを意味します。

もう一方の側がWindows上で.NETを使用している場合は、おそらく新しい行がEnvironment.NewLineになり、Windows上のデフォルト値であるため設定をスキップできます。一般的に

、デフォルトの新しいラインシーケンスは、次のとおりです。Windows用
'\ rを\ n' の
MACは '\ r' がLinux用の
'\ n' の
カスタムコントローラ用 - コントローラの何でも開発あなたは、Linuxから何かを受け取るためのソフトウェアを書く場合はこのようにあり

を入れて、あなたは、などの改行値として「\ n」を、待つかもしれません

あなたは(いくつかのデバイスとのやり取り)いくつかのコントローラとのデータ交換を持っている場合NewLine文字列はdeviとWHATになりますceソフトウェア開発者はそれを設定しました。

NewLineを設定するかどうかわからない場合は、アプリケーションがマルチプラットフォーム環境(WindowsのI.E.送信者、Linuxの受信者)で動作することを前提に設定することをお勧めします。

+0

感謝を試してみました。もう一方の側は途中で電子カードです... –

+0

相手側からのデータをバイト列として表示し、そこから来る行終了シーケンスを確認してください。 – MajesticRa

+0

デバイスの開発者がNewLineを '\ 0'に設定したときに、Cで読みやすくなるケースが1件あります。 – MajesticRa

0

は、あなたが答えを

sp.NewLine = Environment.NewLine; 
関連する問題