2014-04-01 50 views
0

我正在寻找如何从上传控件中过滤各种文本文件的解决方案。 例如,文件扩展名可以是text.fa,text.fasta或text.fastq。这些是DNA序列文件格式。如何过滤C#文件上传的内容类型到所有类型的文本文件?

我想读取上传的文本文件并将内容保存到数据库。验证在服务器端完成。问题是以下验证是只有.text扩展名文件是有效的。这是我也想被纳入有效的列表文件的类型:http://www.fileinfo.com/extension/fasta

C#

//what should I change instead of this. It only works for .txt extension files. 
FileUpload.PostedFile.ContentType == "text/plain" 
+1

有在这个岗位解决方法:http://stackoverflow.com/questions/2780191/how-to-restrict-file-type-in​​-fileupload-control –

+0

什么具体的行为,你想获得?你是否试图显示选择对话框中出现的文件?你是否试图验证选定的文件是否是正确的类型?验证是在客户端还是服务器上完成的?你的问题缺少了很多重要的信息。编辑它并添加更多细节。 –

+0

@JimMischel我在问题中提供了更多信息。 – Atrh

回答

0

这是我想出了一个解决方案。不是最好的,但它的工作原理。

string extension = Path.GetExtension(FileUpload.FileName);//get file extension     
string[] extList = { ".txt", ".fasta", ".fa", ".fna", ".ffn", ".faa", ".frn", ".fas" };// allowed extension list 
int extPos = Array.IndexOf(extList, extension); 
if(exPos > -1){ 

} 
else{ 
} 
相关问题