标签: stringbuilder

C#Xml从StringBuilder中解析

我有一个StringBuilder与XML文件的内容.XML文件内部是一个名为的根标记<root>,包含多个<node>标记.

我想解析XML以读取s中的标签值,但不知道如何做.

我是否必须使用一些C#XML数据类型?

提前致谢

c# xml stringbuilder

3
推荐指数
1
解决办法
1万
查看次数

"StringBuffer是同步的(或线程安全的)而StringBuilder不是",为什么这会使StringBuffer方法变慢?

看完之后 - '同步'是什么意思?我仍然无法理解为什么在线程安全的环境中StringBuffer比StringBuilder慢.StringBuffer必须做多少耗时的工作才能让它变慢?

java stringbuilder synchronization stringbuffer thread-safety

3
推荐指数
1
解决办法
1万
查看次数

C++/CX:Platform :: String vs. std :: wstring

似乎C++/CX没有StringBuilder类或等价的,所以我认为我们是为了这个而使用STL?

这是我的第一个 C++/CX应用程序.用户在TextBox中输入一些文本,点击ENTER按钮,文本被附加到TextBlock"控制台".这段代码确实有效,但最佳做法是什么?

public ref class MainPage sealed
{
public:
    MainPage();

protected:
    virtual void OnNavigatedTo(Windows::UI::Xaml::Navigation::NavigationEventArgs^ e) override;
private:
    std::wstring _commandLine;
    std::wstring _consoleText;
    void Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
};
Run Code Online (Sandbox Code Playgroud)

...

void HelloConsole::MainPage::Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    this->_commandLine = this->InputLine->Text->Data();
    this->_commandLine.append(L"\n");
    this->_consoleText += this->_commandLine;
    this->InputLine->Text = "";
    this->OutputConsole->Text = ref new Platform::String(_consoleText.c_str());
}
Run Code Online (Sandbox Code Playgroud)

stringbuilder windows-8 c++-cx

3
推荐指数
1
解决办法
2823
查看次数

从字符串构建器/字符串c#中删除第一行

好的,所以我试图在表单中创建一个像文本框一样的"控制台",但是一旦你到达底部,可以向上滚动,它只会删除顶线,我有一些困难.到目前为止,当它达到最低点时,它会删除顶线,但只有一次,它只是正常运行.这是我的功能:

   StringBuilder sr = new StringBuilder();
    public void writeLine(string input)
    {
        string firstline = "";
        int numLines = Convert.ToString(sr).Split('\n').Length;
        if (numLines > 15)      //Max Lines
        {                
            sr.Remove(0, Convert.ToString(sr).Split('\n').FirstOrDefault().Length);              
        }
        sr.Append(input + "\r\n");
        consoleTxtBox.Text = Convert.ToString(sr) + numLines;
    }
Run Code Online (Sandbox Code Playgroud)

如果有人能解决这个问题会很好,谢谢

卢卡斯

c# stringbuilder

3
推荐指数
1
解决办法
1万
查看次数

为什么StringBuilder比String快得多

我知道这里发布了很多类似的问题,但这些问题并没有真正回答我的问题.

我只是想知道为什么StringBuilder比使用+运算符的字符串连接快得多.即使+操作员内部是使用StringBuffer或者StringBuilder

public void shortConcatenation(){
    long startTime = System.currentTimeMillis();
    while (System.currentTimeMillis()-startTime<=1000){


        character+="Y";

    }

    System.out.println("short :"+character.length());
}
Run Code Online (Sandbox Code Playgroud)

////使用String builder

 public void shortConcatenation2(){
    long startTime = System.currentTimeMillis();
    StringBuilder sb = new StringBuilder();
    while (System.currentTimeMillis()-startTime<=1000){

        sb.append("Y");
    }
    System.out.println("string builder short :"+sb.length());
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

java string stringbuilder

3
推荐指数
2
解决办法
5517
查看次数

为什么StringBuilder.Equals在这种情况下返回"true"?

我在比较C#(XNA)中的两个StringBuilder时遇到了一个小问题.

StringBuilder sb1;
StringBuilder sb2;
Run Code Online (Sandbox Code Playgroud)

两者都在我的代码的不同部分初始化.一个简单的Console.WriteLine显示它们包含相同的文本.但是,以下是错误的:

sb1.Equals(sb2); // This is false
Run Code Online (Sandbox Code Playgroud)

然而以下是真实的

sb1.ToString().Equals(sb2.ToString); // This is true
Run Code Online (Sandbox Code Playgroud)

怎么会发生这种情况?

c# string stringbuilder equals equals-operator

3
推荐指数
1
解决办法
435
查看次数

如何替换字符串中的多个子字符串实例

我需要在同一个地方替换不同内容的大字符串的一些内容.

让我们说我有一个字符串:

String str = "package blah.foo.bar;\n"
           + "import org.blah.blah;\n"
           + "import sel.this.that;\n"
           + "import sel.boo.foo;\n"
           + "...more text";
Run Code Online (Sandbox Code Playgroud)

我想将这个单词gen插入到以开头import sel.为止的语句中,以便最终结果如下:import sel.gen.this.that;

我已经成功使用以下方法,但只有当我知道子字符串在字符串中的位置时.我的问题是,我不确定如何使以下代码动态:

private String modifyString(String str){
    String hold = str.substring(0, str.indexOf(";"));
    hold = new StringBuilder(hold).insert(13, "gen.").toString();
    str = str.replace("(?m)^package.*", hold);
    return str;

}
Run Code Online (Sandbox Code Playgroud)

上面的代码正确替换字符串package blah.foo.bar;package blah.gen.foo.bar;

但这又一次只能替换字符串的开头部分.我希望能够保存子字符串的所有实例,然后在这些子字符串中插入子字符串.

java regex string stringbuilder substring

3
推荐指数
1
解决办法
298
查看次数

为什么使用append或者不同的StringBuilder的str == str.intern()的结果?

All.I有一个像这样的java代码片段:

 String a = new StringBuilder("app").append("le").toString();
 System.out.println(a.intern() == a);
 String b = new StringBuilder("orange").toString();
 System.out.println(b.intern() == b);
Run Code Online (Sandbox Code Playgroud)

这个java代码将输出true,false.我想知道为什么.谢谢大家.

java string stringbuilder string-interning

3
推荐指数
1
解决办法
388
查看次数

使用+符号进行字符串连接

今天我正在阅读Antonio的博客关于toString()的表现,还有一段:

曾经被认为是邪恶的昨天("不要用+ !!!连接字符串"),已经变得很酷和高效!今天,JVM将+符号编译为字符串构建器(在大多数情况下).所以,不要犹豫,使用它.

现在我很困惑,因为他说今天JVM将+符号编译成字符串构建器(在大多数情况下),但我以前从未听过或看过(代码)这样​​的事情.

有人可以举例说明JVM是做什么的,以及它在什么条件下发生

java performance stringbuilder jvm tostring

3
推荐指数
2
解决办法
3139
查看次数

从Java中的String函数返回String构建器?

我有以下程序,我必须将字符串附加到另一个字符串,我使用字符串构建器以标准方式执行.但是,ab即使在我转换它之后, 该功能也不允许我返回toString().我想问为什么?

 import java.util.*;

 public class prog1 {

        public static String k(int i) {
            String a = "1";
            StringBuilder ab = new StringBuilder();
            int pos = 1;
            if (i == 1) {
               return a;
            }
            else{
                pos++;
                String first = Integer.toString(pos);
                ab.append(a).insert(0,first);
                ab.toString();
                return ab;
            }
        }
        public static void main (String[]args){
                k(2);
            }
        }
Run Code Online (Sandbox Code Playgroud)

java string stringbuilder function

3
推荐指数
1
解决办法
902
查看次数