C# Stream String 转换

var stream = new MemoryStream();

svgDocument.Write(stream);
stream.Position = 0;//关键

StreamReader reader = new StreamReader(stream);
 string text = reader.ReadToEnd();

C#中,从Stream转换到Dataset通常涉及到两个步骤:首先是从Stream中读取数据并解析成某种中间格式,然后将这种中间格式转换为Dataset。下面是一个简单的例子,假设数据来源是CSV格式的文本数据。 首先,你可以使用`StreamReader`来读取Stream中的数据: ```csharp using System; using System.Data; using System.IO; // 假设stream已经指向了数据源 using (StreamReader reader = new StreamReader(stream)) { string csvData = reader.ReadToEnd(); DataTable dataTable = ConvertCsvToDataTable(csvData); DataSet dataSet = new DataSet(); dataSet.Tables.Add(dataTable); } ``` 接着,你需要将CSV格式的字符串转换为DataTable,然后再转换为DataSet: ```csharp private DataTable ConvertCsvToDataTable(string csv) { DataTable table = new DataTable(); string[] rows = csv.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.RemoveEmptyEntries); foreach (string row in rows) { string[] values = row.Split(','); table.Columns.Add(values[0]); } foreach (string row in rows) { string[] values = row.Split(','); DataRow newRow = table.NewRow(); table.Rows.Add(newRow); for (int i = 0; i < values.Length; i++) newRow[i] = values[i]; } return table; } ``` 这段代码提供了从CSV格式字符串创建DataTable的基本逻辑。需要注意的是,实际应用中,CSV格式可能包含复杂情况(如逗号在引号内,换行符在引号内等),因此可能需要使用更复杂的解析逻辑或者现成的库来处理CSV数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值