使用StreamReader读取.text文件并将其拆分为数组/类

本文关键字:拆分 数组 读取 StreamReader text 文件 使用 | 更新日期: 2023-09-27 17:54:10

我需要使用类似StreamReader的东西来读取。text文件并将其吐出可以用于图片查看器和选项框等的数组。文本文件的布局类似于:

PhotoURL PAGEURL SKU# Option1 Option2 Option3 .etc

[编辑]:文本文件
示例http://image.com/book.jpg google.com PG52389精装电子书
http://item.com/shirt.jpg google.com SH34920 Small Medium Large
ExamplePhotoUrlHere google.com SE39270灰黑红蓝

不是每个项目都有单独的选项,所以在某些列上有一些空白。

我知道我需要使用流阅读器读取文本文件,但我不确定如何将其分割成一个类与数组和所有这些。

使用StreamReader读取.text文件并将其拆分为数组/类

可能的起始点(只是空格分隔):

var linesAsArrays = File.ReadAllLines(absoluteFilePath).Split();

你需要弄清楚"列"是什么意思——因为从你的样本中不清楚如何将它们分开。

请注意,找到现有的CSV阅读器可能是更好的选择,而不是自己发明。

我不打算写一个完整的解决方案,但您可以这样做(未经测试)

char[] separators = { ' ', ''t' };
while(!streamReader.EndOfStream)
{
    string line = streamReader.ReadLine();
    string[] fields = line.Split(separators, 4);
    var result = new
    {
        PhotoUrl = fields[0],
        PageUrl = fields[1],
        Sku = fields[2],
        Options = fields[3].Split(separators),
    };
    // Use result
}