繁体   English   中英

从内存中读取文件的第一行

[英]Read the first line of a file from memory

我有一个制表符分隔的文本文件,我需要将其上传到安全文件夹中,以便SSIS导入SQL Server。 该文件将由外部用户通过Web应用程序上传。

我的挑战是,在允许我将其转到安全文件夹之前,需要检查该文件中的某些内容。 即我需要确保用户具有特定的列。

如果将文件保存到Web应用程序的文件夹中,则可以执行此操作。 但是,文件中数据的性质使得我们不希望将此文件放置在安全文件夹以外的任何位置。 我也不能将其直接放置到此文件夹中,因为SSIS包被设置为在文件显示在那里立即触发。

我需要做的是找到一种解析内存中的文件的方法,如果通过了所有检查,则将其上传到安全文件夹。

我正在使用C#.NET和FileUpload控件。

到目前为止,我的搜索包括各种信息,但所有这些信息都需要先将文件保存在某个位置,然后再使用它。

非常感谢您的参与。 如果有人可以将我指向一个对象或某些代码,我可以检查一下,我将不胜感激。

FileContent调用SaveAs ,而是使用FileContent属性以Stream访问文件的内容,然后可以执行所需的任何处理,然后再手动保存。

例如,如下所示:

string data;

using(StreamReader reader = new StreamReader(fileUpload.FileContent))
{
    data = reader.ReadToEnd();
}

现在, data变量将文件内容包含为字符串。 您可以执行所需的任何处理,然后将其保存(或不保存)到适当的位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM