文本(编码格式ANSI)内容如下:0会客火星某年某月某日,于火星见面
1323655199132365879913236536390旅游西藏探究活佛转世的奥秘1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040
其中是六个1,是六个2,大侠们就先说说怎么以分割吧
1323655199132365879913236536390旅游西藏探究活佛转世的奥秘1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040
其中是六个1,是六个2,大侠们就先说说怎么以分割吧
解决方案 »
- 大侠们帮我改一下相对路径添加音乐嘛,我试了很多的方法都不能解决
- 如何将大文件分块保存到Oracle中
- 问一个IP地址处理的问题(字符串)
- c#winform程序打包后在本机运行正常,在别人机器总是提示"SQL Server不存在或访问被拒绝"
- textbox控件怎么给它的多行文本付值
- 求installshield下载地址 这东西多大啊?
- c#中有无c++中union 一样的关键字,可以给同一块内存(或者同一个指针)不同的命名?
- 我对钩子不熟,请各位看看这个问题怎么解决?
- .NET程序员(C# + SQL Server) 3名
- 求助,如何爬取浏览器开发者工具中Network中XHR
- 因为某项目未能生成,所以无法发布
- 如何根据字符串选定CheckBoxList值
string str="aaajsbbbjsccc";
string[] sArray=Regex.Split(str,"js",RegexOptions.IgnoreCase);
foreach (string i in sArray) Response.Write(i.ToString() + "<br>");
输出结果:
aaa
bbb
ccc
0新建事件地球吃饭133723799913372415991337148040其中的是ASCII码值1,现在我需要以分割这段字符串,该怎么做呢?大家都想想办法啊,谢谢了
static void Main(string[] args)
{
var list = new List<string>();
string text = @"0会客火星某年某月某日,于火星见面1323655199132365879913236536390旅游西藏探究活佛转世的奥1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040";
Console.WriteLine(text);
var indexes = Regex.Matches(text, @"0(?![^\w\s\S])", RegexOptions.IgnoreCase).Cast<Match>().Select(match => match.Index).ToArray();
int i = 0;
for (; i < indexes.Length - 1; i++)
{
list.Add(text.Substring(indexes[i], indexes[i + 1] - indexes[i]));
}
list.Add(text.Substring(indexes[i], text.Length - indexes[i]));
foreach (var s in list)
{
Console.WriteLine(s);
}
Console.ReadKey();
}
PS:你给的文字,为什么复制到 Notepad 里面会有很多隐藏的全角空白符啊?!
0新建事件地球吃饭133723799913372415991337148040以进行字符串分割,其中 这个是ASCII码值1,老大们再帮忙看看啊
// 把 @"0(?![^\w\s\S])" 改成 @"0[^x00-xff]"
class Program
{
static void Main(string[] args)
{
string str = "0会客火星某年某月某日,于火星见面\r\n1323655199132365879913236536390旅游西藏探究活佛转世的奥秘1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040";
string splitStr = ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString();
string[] result = str.Split(new string[] { splitStr }, StringSplitOptions.None);
}
}
另外这个分割的规则还不是很清晰是按stx结尾分割呢,还是按6个soh + 一个stx结尾来算一组呢
0会客火星某年某月某日,于火星见面
1323655199132365879913236536390旅游西藏探究活佛转世的奥秘1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040d";
string pat = null;
char asc_1 = (char) 1;
char asc_2 = (char) 2;
for (int i = 0; i < 3; ++i)pat += asc_1;
for (int i = 0; i < 3; ++i)pat += asc_2;
str = str.Replace(pat,null);
0新建事件地球吃饭133723799913372415991337148040其中的是ASCII码值1,现在我需要以分割这段字符串,该怎么做呢?大家都想想办法啊,谢谢了应该是ASCII码为1的那个字符………………我说楼主你就不会用个别的字符替代一下么,分明知道显示不出来。
刚试验了一下,数字的长度没有问题了,但是打印出来显示不对啊,第一条记录没有问题,第二条和第三条记录没有分割开。
文本中的每条记录以STX结尾,SOH用于分割每条记录中的字段,我这样说,明白吗?
wpf的,直接listview.ItemSource=...
如果是winform的话,只好一行一行的添加喔
你先说清楚再给你代码
for(int i = 0 ; i < xxx.Length; i ++)
{
ListViewItem item = new ListViewItem(xxx[i]);
listView1.Items.Add(item);
}
ListViewItem item = new ListViewItem(xxx[i]); 这句报错啦
1323655199132365879913236536390旅游西藏探究活佛转世的奥秘1323914399132391799913236537570新建事件地球吃饭133723799913372415991337148040
";
string split1 = ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString() + ((char)2).ToString();
string[] result1 = str.Split(new string[] { split1 }, StringSplitOptions.None);
for(int i=0; i<result1.Length;i++){
string split2 = ((char)1).ToString() + ((char)1).ToString() + ((char)1).ToString() + ((char)1).ToString() + ((char)1).ToString() + ((char)1).ToString();
string[] result2 = result1.Split(new string[] { split2 }, StringSplitOptions.None);
for(int j=0; j<result2.Length;j++){
//此处该怎么让数组里面的内容显示在listview中?正确应该是3行7列
}
}