怎样把一个字符串数组连接成一个新的字符串?

DCD 2005-02-22 08:51:55
元素有很多,除了用for循环外,有什么好方法?

StreamReader map = new StreamReader("map.txt");
string[] abc = Regex.Split(map.ReadToEnd(), "\r\n");

这样得到的字符串数组,我想再按照原来的样子,每个元素之间都再加入一个"\r\n",最后变成一个字符串,再写回文件里。
...全文
988 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yizhixiaozhu 2005-02-22
  • 打赏
  • 举报
回复
如果按照你的要求
就必须循环在每个元素后面加入换行符了
yizhixiaozhu 2005-02-22
  • 打赏
  • 举报
回复
你的文本文件里面有换行符的
直接读取这个不就得了
DCD 2005-02-22
  • 打赏
  • 举报
回复
楼上的代码差不多,但是我还需要在两个字符串之间加入换行符
windinwing 2005-02-22
  • 打赏
  • 举报
回复
Concat()
在内部调用了 stringbuilder.append
stringbuilder效率最高,3万行一行20个字算才60万个字 ,一个汉字2byte , 8bit
也就4M内存足够放的下了,在加上其他开销和IO,如果不是需要经常转换不用去管性能的

yizhixiaozhu 2005-02-22
  • 打赏
  • 举报
回复
System.String.Concat(string[] abc);

[C#]
using System;

public class ConcatTest {
public static void Main() {

// make an array of strings. Note that we have included spaces
string [] s = { "hello ", "and ", "welcome ", "to ", "this ", "demo! " };

// put all the strings together
Console.WriteLine(string.Concat(s));

// sort the strings, and put them together
Array.Sort(s);
Console.WriteLine(string.Concat(s));
}
}
dazhu2 2005-02-22
  • 打赏
  • 举报
回复
stringbuilder.append方法
xxuu503 2005-02-22
  • 打赏
  • 举报
回复
不append,你给加起来?

觉得效率慢,自己写一个?搞笑!
DCD 2005-02-22
  • 打赏
  • 举报
回复
那样一样需要用到循环啊,那个文件有3万多行,如果是append,那就需要用3万多次append,速度行吗?
hawk234 2005-02-22
  • 打赏
  • 举报
回复
不循环好象不行.
AllenTing 2005-02-22
  • 打赏
  • 举报
回复
用stringbuilder的append方法效率较高

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧