Substring 截取字符串的时候怎样按照字节截取?

jin_ok 2010-08-04 02:52:46
如题
...全文
608 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunshareforever 2021-07-21
  • 打赏
  • 举报
回复

人家就是想通过字节长度来分割数据,别问为什么这样搞,上游给的数据规则就是这样。

wuyq11 2010-08-04
  • 打赏
  • 举报
回复
string[] arr=str.Split(' ');
01087635776RMB001 在根据正则判断数字替换获取数据
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
有些项是用空格分的,有些不是,这是一个其他系统跟我的数据文件,我要拆分这些数据写入表的
tashiwoweiyi 2010-08-04
  • 打赏
  • 举报
回复
看了你需求,你这不应该用substring来截取数据.

你要弄清楚你这条数据的存储有什么规律.

我刚看了下,你这好像是以空格来划分的.

你可以用空格来截取数据 split(' ')

如果只要名字,则 split(' ')[0];
细嗅蔷薇 2010-08-04
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 jin_ok 的回复:]
测试四 01087635776RMB001 北京市朝阳区肖云路11号

看来我没有表述清楚,上面是数据文件中的一行数据,我要获取到 "测试四"、"01087635776"、"RMB"、"001"、"北京市朝阳区肖云路11号"

第一个数据项 姓名 长度为20个字节
第二个数据项 电话 长度为11个字节
第三个数据项 类别 长度为3个字节
第四个数据项 地址 长度为100个字节
……
[/Quote]
你这样写个根据字段写张表里面不就行了么,再写个实体类 无论是读写 不都简单了么
谁会把这些信息拼到一个字符串里面 然后再截取
这不是有毛病么
gyj5240 2010-08-04
  • 打赏
  • 举报
回复
佩服楼主

分成对应的各个字段不是更好吗?

你那个也拼一起也不固定几个空格,不好取的,没必要这样,累自己啊
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
一粘在上面空格变少了
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
测试四 01087635776RMB001 北京市朝阳区肖云路11号

看来我没有表述清楚,上面是数据文件中的一行数据,我要获取到 "测试四"、"01087635776"、"RMB"、"001"、"北京市朝阳区肖云路11号"

第一个数据项 姓名 长度为20个字节
第二个数据项 电话 长度为11个字节
第三个数据项 类别 长度为3个字节
第四个数据项 地址 长度为100个字节




sureme88 2010-08-04
  • 打赏
  • 举报
回复
string ss = "测试四 01087635776";
string[] arr = ss.Split(' ');
if(arr.Count()>0 ){
string strName=arr[0];
}
细嗅蔷薇 2010-08-04
  • 打赏
  • 举报
回复
什么意思?
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
各个项都有获取对应的值,不能错位,有些项是连着的没有空格
细嗅蔷薇 2010-08-04
  • 打赏
  • 举报
回复
真无语
谁教你这样存用户信息的? 把它分成一个个字段不就行了么?
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
不能用split,我的数据是这样的;我要截取姓名
测试三 4218********008612345678900 3U971048245 0010- 20100100001 010101北京市海淀区1号一一股份企划   1119880104MR. CE SHISAN 16CNCN20161211903103000003
porschev 2010-08-04
  • 打赏
  • 举报
回复
你要的是。。。。什么截取啊。。。。substring可以按字符的索引去截

split可以通过某字符去把字符串切成N段。。。
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
.在数据文件当中是空格
细嗅蔷薇 2010-08-04
  • 打赏
  • 举报
回复
是split()
细嗅蔷薇 2010-08-04
  • 打赏
  • 举报
回复
测试四..........12456456
中间的点是起隔开的作用么?或者.数量是固定的么?
如果是这样的话 可以用string的spite(“........”) 截取 手写的 不知道拼错没
或者写成“测试四/123456789”
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
我只想截取"测试四"
这样可以Encoding.Default.GetString(Encoding.Default.GetBytes(strLineConten), 0, 20)
aa162504 2010-08-04
  • 打赏
  • 举报
回复
截取之后再拼起来呢?
jin_ok 2010-08-04
  • 打赏
  • 举报
回复
我的需求是这样的:
数据文件中有一个数据项是姓名,这个数据项20个字节的长度,如下所示"."是空格,电话号码是第二个数据项
测试四..............01087635776
当我读取一行内容strLineConten
dim strName=trim(strLineConten.subStrin(0,20)) 这样就会出现错位的现象,strName的值里面还包含另外一个数据的的内容

加载更多回复(4)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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