問題タブ [stringbuilder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1942 参照

asp.net - クリーンな出力を備えた ASP.NET HTML コントロール?

仕事で ASP.NET Web アプリケーションを開発していますが、同じ問題が発生し続けています。

コード ビハインドからページに HTML を書き込みたい場合があります。たとえば、GET 変数 "view" の値に応じて出力が変化する Editor.aspx ページがあります。つまり、「Editor.aspx?view=apples」は「Editor.aspx?view=oranges」とは異なる HTML を出力します。

現在、この HTML を StringBuilder で出力しています。たとえば、リストを作成する場合は、次の構文を使用できます。

問題は、この目的のために ASP.NET の List コントロールを使用したいということです。なぜなら、StringBuilder 構文の数行がコードの読みやすさを妨げているからです。ただし、ASP.NET コントロールは、一意の ID、インライン スタイル、およびインライン JavaScript の時折のブロックを含む複雑な HTML を出力する傾向があります。

私の質問は、一般的な HTML タグを表すだけの ASP.NET コントロールはありますか? つまり、次の例のようなコントロールはありますか。

ラッパーなどがあることは知っていますが、ASP.NET の複雑さを抑えるのではなく、最初からシンプルにすることから始めたいと思います。

0 投票する
3 に答える
459 参照

c# - VB.NETの拡張機能をC#に移植するにはどうすればよいですか?

VB.NETでStringBuilderの拡張機能を作成して、AppendFormattedLineメソッドを追加しました(したがって、改行文字の引数の1つを使用する必要はありません)。

0 投票する
4 に答える
18093 参照

.net - StringBuilder に IndexOf メソッドがないのはなぜですか?

ToString().IndexOf(...) を呼び出すことができることは理解していますが、余分な文字列を作成したくありません。検索ルーチンを手動で記述できることを理解しています。そのようなルーチンがフレームワークにまだ存在しないのはなぜだろうか。

0 投票する
19 に答える
433812 参照

java - StringBuilder と Java の toString() での文字列連結

toString()以下の 2 つの実装を考えると、どちらが優先されますか。

また

?

さらに重要なことは、プロパティが 3 つしかないことを考えると、違いはないかもしれませんが、どの時点で+concat から に 切り替えStringBuilderますか?

0 投票する
4 に答える
2891 参照

c# - JavaとC#のStringBuilderの違い

JavaコードをC#に変換しています。JavaのStringBuilderクラスには、C#のものよりもはるかに多くのメソッドがあるようです。私は(たとえば)Java機能に興味があります

これはC#にはないようです。

最初の2つは次のようにモデル化できると思います

しかし、3番目は実際のコンテンツではなくsbのコンテンツのコピーを操作しますか?

不足しているすべてのメソッドにこの機能を追加する一般的な方法はありますか?

0 投票する
6 に答える
6688 参照

delphi - いつ、なぜTStringBuilderを使用する必要がありますか?

私は1年前にプログラムをDelphi4からDelphi2009に変換しました。これは主に、Unicodeにジャンプするためだけでなく、Delphiの長年にわたる改善の恩恵を受けるためでもあります。

したがって、私のコードはもちろん、すべてレガシーコードです。短い文字列を使用しますが、現在はすべて長いUnicode文字列になっているので、古いANSI関数をすべて新しい同等の文字列に変更しました。

しかし、Delphi 2009では、おそらく.NETのStringBuilderクラスをモデルにしたTStringBuilderクラスが導入されました。

私のプログラムは多くの文字列の処理と操作を行い、数百メガバイトの大きな文字列を一度にメモリにロードして処理することができます。

DelphiのTStringBuilderの実装についてはよくわかりませんが、デフォルトの文字列操作を使用するよりも高速な操作があると聞きました。

私の質問は、努力を重ねて、標準の文字列をTStringBuilderクラスを使用するように変換する価値があるかどうかです。それを行うことで何が得られ、何が失われますか?


あなたの答えに感謝し、私の結論に私を導きます。それは、.NET互換性が必要とされない限り気にしないでください。

Jolyon Smithは、Delphi 2009 String Performanceに関するブログで、次のように述べています。

しかし、TStringBuilderは、Win32 / .NETコードベースをシングルソース化することを希望または必要とする開発者を除いて、Win32アプリケーションの開発者に実際のメリットを提供するのではなく、主に.NET互換性フィクスチャとして存在するように見えます。文字列処理のパフォーマンスは問題ではありません。

0 投票する
11 に答える
7403 参照

java - 文字列は不変です。つまり、+= を使用してはならず、StringBuffer だけを使用するべきではありません。

文字列は不変です。つまり、一度作成すると変更できません。

では、これは、StringBuffer を作成してそれにテキストを追加した場合よりも、+= を追加した方がより多くのメモリを消費するということでしょうか?

+= を使用すると、メモリに保存する必要があるたびに新しい「オブジェクト」を作成することになりますね。

0 投票する
6 に答える
226 参照

stringbuilder - String/StringBuilderどのボリュームを使用しますか

金曜日のリファクタリング時間です!!!

SQLステートメントを生成するために使用するオブジェクトがあります。

oDb.Fromは1回設定されます。次に、メタデータは、すべてを結合して返すまで、時間の経過とともに結合を追加する可能性があります。

つまり、Qは、構文oDb.From + =をsbFrom.Append()に置き換える前に何回保持するかということです。

それは#3、4、または15回ですか?

それとも、それは本当にコンテンツの長さの問題ですか?もしそうなら、魔法の#は何ですか?

TIA

0 投票する
9 に答える
77233 参照

java - Java StringBuilder をファイルにダンプする

StringBuilder をテキスト ファイルにダンプする最も効率的でエレガントな方法は何ですか?

できるよ:

しかし、これは非常に長いファイルに対して効率的ですか?

より良い方法はありますか?