Asp.net mvc 如何在C#3.0中获得上传文件的完整路径?
在我的ASP.NET MVC网站中,我必须阅读一个txt文件,其中包含一些名称和电子邮件,用“;”分隔。之后,我必须将此txt文件的每一行保存到数据库中 通过谷歌搜索,我发现了一些代码片段,但在所有这些代码片段中,我都必须使用txt文件路径 但是,我怎样才能走这条路呢?此文件可能位于用户计算机中的任何位置Asp.net mvc 如何在C#3.0中获得上传文件的完整路径?,asp.net-mvc,c#-3.0,filestream,text-files,import,Asp.net Mvc,C# 3.0,Filestream,Text Files,Import,在我的ASP.NET MVC网站中,我必须阅读一个txt文件,其中包含一些名称和电子邮件,用“;”分隔。之后,我必须将此txt文件的每一行保存到数据库中 通过谷歌搜索,我发现了一些代码片段,但在所有这些代码片段中,我都必须使用txt文件路径 但是,我怎样才能走这条路呢?此文件可能位于用户计算机中的任何位置 谢谢 如果您使用的是asp.net网页模型,则Server.MapPath(“~/”可以获取网站的根目录,以便传递所需的路径。你可能需要打电话 HttpContext.Current.Serv
谢谢 如果您使用的是asp.net网页模型,则
Server.MapPath(“~/”
可以获取网站的根目录,以便传递所需的路径。你可能需要打电话
HttpContext.Current.Server.MapPath("~/");
例如,保存文本文件的文件夹:
string directoryOfTexts = HttpContext.Current.Server.MapPath("~/txtdata/");
一旦你拥有了它,你就可以阅读它:
string directoryOfTexts = HttpContext.Current.Server.MapPath("~/txtdata/");
string path = directoryOfTexts + "myfile.txt";
string alltextinfile = "";
if (File.Exists(path))
{
using (StreamReader sr = new StreamReader(path))
{
//This allows you to do one Read operation.
alltextinfile = sr.ReadToEnd());
}
}
如果这是针对桌面应用程序的,则application类具有以下所有信息:
所有属性都列出了其他appdata文件夹和内容,但一旦您有了可执行文件的应用程序路径,这将为您提供上下文,例如application.LocalUserAppDataPath
如果内容足够小,您也可以在保存到数据库之前将其保存在
哈希表
或通用列表中。如果您使用的是asp.net网页模型,则服务器.MapPath(“~/”
可以获取网站的根目录,从而传递所需的路径。你可能需要打电话
HttpContext.Current.Server.MapPath("~/");
例如,保存文本文件的文件夹:
string directoryOfTexts = HttpContext.Current.Server.MapPath("~/txtdata/");
一旦你拥有了它,你就可以阅读它:
string directoryOfTexts = HttpContext.Current.Server.MapPath("~/txtdata/");
string path = directoryOfTexts + "myfile.txt";
string alltextinfile = "";
if (File.Exists(path))
{
using (StreamReader sr = new StreamReader(path))
{
//This allows you to do one Read operation.
alltextinfile = sr.ReadToEnd());
}
}
如果这是针对桌面应用程序的,则application类具有以下所有信息:
所有属性都列出了其他appdata文件夹和内容,但一旦您有了可执行文件的应用程序路径,这将为您提供上下文,例如application.LocalUserAppDataPath
如果内容足够小,您也可以在保存到数据库之前将其保存在哈希表
或通用列表中。您无法获取上载文件的完整路径。这对上传文件的用户来说是隐私侵犯
相反,您需要读取已上载的Request.文件。例如:
HttpPostedFile file = Request.Files[0];
using (StreamReader reader = new StreamReader(file.InputStream))
{
while ((string line = reader.ReadLine()) != null)
{
string[] addresses = line.Split(';');
// Do stuff with the addresses
}
}
无法获取上载文件的完整路径。这对上传文件的用户来说是隐私侵犯
相反,您需要读取已上载的Request.文件。例如:
HttpPostedFile file = Request.Files[0];
using (StreamReader reader = new StreamReader(file.InputStream))
{
while ((string line = reader.ReadLine()) != null)
{
string[] addresses = line.Split(';');
// Do stuff with the addresses
}
}
HTML中的表单应具有enctype=“mulitipart/form data”
HTML中的表单应该有enctype=“mulitipart/form data”
这是用于ASP.NET网站的吗?@Jacob-用户将选择一个txt文件,当他单击某个按钮时,将调用一个操作。在此操作中,我必须读取此txt文件的所有数据并将其保存到数据库中。这是针对ASP.NET网站的吗?@Jacob-用户将选择一个txt文件,当他单击某个按钮时,将调用一个操作。在此操作中,我必须读取此txt文件的所有数据并将其保存到数据库中。嗨,Ryan!我真的不需要保存txt文件。我只需要阅读它的内容并将其保存到数据库Hi Ryan!我真的不需要保存txt文件。我只需要阅读它的内容,并保存到数据库雅各布,谢谢!我已经朝这个方向走了!:-)它正在保存到数据库,但现在我遇到了诸如“')、“~”等特殊字符的问题。我忘了使用编码!!谢谢你所做的一切!雅各布,谢谢!我已经朝这个方向走了!:-)它正在保存到数据库,但现在我遇到了诸如“')、“~”等特殊字符的问题。我忘了使用编码!!谢谢你所做的一切!