1

添付のスクリーンショットでわかるように、sb の長さを確認しています。0 でない場合は、Replace コマンドを実行します。

ただし、どういうわけか長さがゼロで、Replace コマンドを実行して例外をスローしています。しかし、「_str」にはコンテンツがあるため、長さがゼロになる方法がわかりません...

これは StringBuilder のバグですか?

ここに画像の説明を入力

以下は別のバグで、おそらく上記のものに関連しています。Replace コマンドをコメントアウトしたところ、ToString() で失敗していることがわかります。

ここに画像の説明を入力

4

1 に答える 1

1

をどのように使用していNSLogWriterますか? このように (私のブログを参照してください):

Console.SetOut (new NSLogWriter ());
Console.WriteLine ("we're back in action!");

または、独自のインスタンスを作成 (および使用) していますか? 例えば

var log = new NSLogWriter ();
log.WriteLine ("uho");

2 番目の方法を使用する場合は、マルチスレッドを自分で処理する必要があります。たとえば、チェックと呼び出しsbの間に別のログがフラッシュ (およびクリア) された可能性があります。LengthReplace

System.ConsoleNSLogWriterが でラップされているため、これを回避できますTextWriter.Synchronized。たとえば、次のようなものです。

stdout = new NSLogWriter ();
stdout = TextWriter.Synchronized (stdout);
于 2012-07-28T15:46:41.180 に答える