c# - 拆分过长的字符串
问题描述
我正在使用一个 API,它像这样在 json 中采用这个大字符串{"data" : "the large string which in the picture"}
所以我想开发它并在 2 个请求中发送字符串,但是当我尝试使用时,Length / 2
我得到了那个大字符串的一半,但没有像在跟随图片:
我想用完整的行获得该字符串的一半以避免请求超时
给我结果的代码:
DataPart1.data = Encoding.ASCII.GetString(dataByte.Take(dataByte.Length / 2).ToArray());
DataPart2.data = Encoding.ASCII.GetString(dataByte.Skip(DataPart1.data.Count()).ToArray()).ToString();
解决方案
要找到要拆分字符串的确切索引,您可能需要尝试使用该方法查找最接近\r\n
字符串中间的索引。String.IndexOf(string value, int startIndex)
代码看起来像
var str = "1,2,3,4\r\n5,6,7,8\r\n9,10,11,12";
var half = str.Substring(0, str.IndexOf("\r\n", str.Length / 2));
这导致"1,2,3,4\r\n5,6,7,8"
您可能希望为字符串的中间是否在最后一行内或使用的行分隔符不是\r\n
.
推荐阅读
- laravel - Laravel 5.7 多对多关系问题与分页
- php - php xpath搜索div值并找到添加元素的值
- swift - 解决 Swift 编程中的嵌套循环问题:The Big Nerd Ranch Guide
- android - Firebase:如何获取其他用户的 uid?
- javascript - 如何在客户端 js 中使用 node.js 中定义的变量?
- javascript - 如何通过在下拉列表中选择项目来检索文本框中的数据库值
- python - 如何限制 python pandas 数据框中的操作区域?
- html - Button :focus 样式在手机上不起作用?
- c# - NServiceBus 升级大版本策略
- docker - Jenkinsfile - 构建代理问题