當前位置:首頁 » 文件管理 » aspnetmvc文件上傳

aspnetmvc文件上傳

發布時間: 2022-09-26 15:58:18

Ⅰ asp.net mvc2.0 上傳多個文件問題

for (fileCount = 0; fileCount < files.Count; fileCount++)
{
//定義訪問客戶端上傳文件的對象
System.Web.HttpPostedFile postedFile = files[fileCount];
string FileType = postedFile.ContentType.ToString();//獲取要上傳的文件類型,驗證文件頭

string fileName, fileExtension;
//取得上傳得文件名
fileName = System.IO.Path.GetFileName(postedFile.FileName);
//取得文件的擴展名
fileExtension = System.IO.Path.GetExtension(fileName);

//在上傳文件不為空的情況下,驗證文件名以及大小是否符合,如果不符合則不允許上傳
if (((FileType == "text/plain" && fileExtension.ToLower() == ".txt") || (FileType == "application/x-zip-compressed" && fileExtension.ToLower() == ".zip") || (FileType == "application/octet-stream" && fileExtension.ToLower() == ".rar"))&&postedFile.ContentLength/1024<=1024)
{//在這里通過檢查文件頭與文件名是否匹配 從而限制了文件上傳類型 註:可上傳的類型有TXT,ZIP,RAR,且大小隻能為1M一下

if (fileName != String.Empty)
{
fileName = RandomFileName() + fileExtension;

//上傳的文件信息
strMsg.Append("上傳的文件類型:" + postedFile.ContentType.ToString() + "<br>");
strMsg.Append("客戶端文件地址:" + postedFile.FileName + "<br>");
strMsg.Append("上傳文件的文件名:" + fileName + "<br>");
strMsg.Append("上傳文件的大小為:" + postedFile.ContentLength + "位元組<br>");
strMsg.Append("上傳文件的擴展名:" + fileExtension + "<br><hr color=red>");
//保存到指定的文件夾
postedFile.SaveAs(Server.MapPath("public_file/" + UserName + "/") + fileName);
fileName = "";

}
}

比如這段代碼來說,它不是通過for遍歷了,然後不就可以得到你需要的文件了,你可以在裡面在進行判斷一下,不就OK了。!~~~~~

Ⅱ .net mvc限制了上傳文件的大小,httpRuntime節點加在哪裡

<configuration>
<system.web>
<httpRuntime maxRequestLength="4000"
enable = "True"
requestLengthDiskThreshold="512
useFullyQualifiedRedirectUrl="True"
executionTimeout="45"
versionHeader="1.1.4128"/>
</system.web>
</configuration>

Ⅲ mvc視圖中怎麼上傳圖片並顯示

如果只是上傳的話那太容易了,如果還要顯示那就難了,因為要顯示的話就不能只向伺服器提交一次請求,必須非同步提交。下面的例子是我親自寫的,非同步提交上傳圖片並預覽。全部代碼都在。

返回到前台頁面的JSON格式對象是以類的對象。
publicclassReturnImage
{
publicstringbig{get;set;}
publicstringsmall{get;set;}
publicstringisSuccessfull{get;set;}
publicstringmessage{get;set;}
}

對於上傳和生成縮略圖,請自行完成,以下是ASP.NETMVC的例子。
publicclassHomeController:Controller
{
//
//GET:/Home/
publicActionResultIndex()
{
returnView();
}
///<summary>
///上傳圖片
///</summary>
///<returns></returns>
publicActionResultUploadImage()
{
//定義錯誤消息
JsonResultmsg=newJsonResult();
try
{
//接受上傳文件
HttpPostedFileBasepostFile=Request.Files["upImage"];
if(postFile!=null)
{
DateTimetime=DateTime.Now;
//獲取上傳目錄轉換為物理路徑
stringuploadPath=Server.MapPath("~/UploadFiles/"+time.Year+"/"+time.ToString("yyyyMMdd")+"/");
//文件名
stringfileName=time.ToString("yyyyMMddHHmmssfff");
//後綴名稱
stringfiletrype=System.IO.Path.GetExtension(postFile.FileName);
//獲取文件大小
longcontentLength=postFile.ContentLength;
//文件不能大於2M
if(contentLength<=1024*2048)
{
//如果不存在path目錄
if(!Directory.Exists(uploadPath))
{
//那麼就創建它
Directory.CreateDirectory(uploadPath);
}
//保存文件的物理路徑
stringsaveFile=uploadPath+fileName+"_big"+filetrype;
try
{
//保存文件
postFile.SaveAs(saveFile);
//保存縮略圖的物理路徑
stringsmall=uploadPath+fileName+"_small"+filetrype;
MakeThumbnail(saveFile,small,320,240,"W");
ReturnImageimage=newReturnImage();
image.big="/UploadFiles/"+time.Year+"/"+time.ToString("yyyyMMdd")+"/"+fileName+"_big"+filetrype;
image.small="/UploadFiles/"+time.Year+"/"+time.ToString("yyyyMMdd")+"/"+fileName+"_small"+filetrype;
msg=Json(image);
}
catch
{
msg=Json("上傳失敗");
}
}
else
{
msg=Json("文件大小超過限制要求");
}
}
else
{
msg=Json("請選擇文件");
}
}
catch(Exceptione)
{
;
}
msg.ContentType="text/html";
returnmsg;
}
///<summary>

由於回答超過最大限制,///生成縮略圖的代碼請向我索取

Ⅳ Asp.Net MVC3 上傳文件問題

可以考慮一下以下代碼:首先創建:一 創建表單
@using (Html.BeginForm("Index", "Home", FormMethod.Post, new { enctype = "multipart/form-data" })){ <input type="file" name="file" /> <input type="submit" value="OK" />}
二 創建controlle

public class HomeController : Controller{ // This action renders the form public ActionResult Index() { return View(); } // This action handles the form POST and the upload [HttpPost] public ActionResult Index(HttpPostedFileBase file) { // Verify that the user selected a file if (file != null && file.ContentLength > 0) { // extract only the fielname var fileName = Path.GetFileName(file.FileName); // store the file inside ~/App_Data/uploads folder var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); } // redirect back to the index action to show the form once again return RedirectToAction("Index"); }}

Ⅳ ASP.NET MVC3上傳到空間商的伺服器上(IIS7,已開通ASP.NET )後出現403錯誤是怎麼回事

不確定,供參考一下,

看一下伺服器提供商IIS 7上所安裝的模塊(Mole),看有沒有少了UrlAuthorization(尤其是這個)、UrlMappingsMole、UrlRoutingMole這些「託管模塊」,還有可能缺少的「本機模塊」是什麼我忘了。。

再不行的話就讓伺服器提供商把他IIS 7上所安裝的模塊(本機的跟託管的)名字復制一份給你,然後把這些模塊名字跟你自己機子上的IIS 7所安裝模塊名字對比一下,看看伺服器提供商的IIS 7有沒有少了哪個(些)模塊。。
如果少了的話,當然讓他加上。。只是我也不能確定加上了就起作用。。

如果不明白的話,請補充問題,希望我能幫到你。
如果這對你有幫助話,請將此標為最佳答案,謝謝。

Ⅵ .NET MVC 上傳文件時怎麼修改上傳的文件名

文件到服務端後你自己寫入磁碟,文件名當然是你定了。

Ⅶ 在asp.net mvc3 中,在controller中使用HttpPostedFileBase file 參數獲取上傳的文件,文件路徑問題

重新說明一下,之前我測試用的是谷歌瀏覽器不是IE。在IE中file.FileName包含路徑名的,而谷歌不包含。所以我之前的回答中才會說文件名中不包含路徑名,我想你問題就是這個引起的。你可以在保存前加個判斷:
string fileName = file.FileName;
if (fileName.LastIndexOf("\\") > -1)
{
fileName = fileName.Substring(fileName.LastIndexOf("\\") + 1);
}
這樣就Ok了,同時兼容谷歌和IE

Ⅷ asp.net mvc中如何讀取上傳的doc文件中的數據(含有中文字元)

using Aspose.Words;要引用這個dll
#region 獲取正文內容

Byte[] wordbytes = GetReadWord();//獲取文件二進制
var strFileName = Server.MapPath("~/temp/a.doc");
var strhtmlFileName = Server.MapPath("~/temp/b.htm");
var file = File.OpenWrite(strFileName);
file.Write(wordbytes, 0, wordbytes.Length);
file.Close();
file.Dispose();
Aspose.Words.Document d = new Aspose.Words.Document(strFileName);
d.Save(strhtmlFileName, SaveFormat.Html);
var htmlCode = File.ReadAllText(strhtmlFileName, Encoding.GetEncoding("GB2312"));
File.Delete(strFileName);
File.Delete(strhtmlFileName);
#endregion
htmlCode 欄位就是獲取的內容字元串

Ⅸ 我使用.NET MVC無法上傳文件至伺服器

1.表單的 enctype 需要設置為 multipart/form-data
2.文件域的控制項需要有name屬性。

Ⅹ springmvc怎麼實現多文件上傳

多文件上傳其實很簡單,和上傳其他相同的參數如checkbox一樣,表單中使用相同的名稱,然後action中將MultipartFile參數類定義為數組就可以。
接下來實現:
1、創建一個上傳多文件的表單:
在CODE上查看代碼片派生到我的代碼片
<body>
<h2>上傳多個文件 實例</h2>
<form action="filesUpload.html" method="post"
enctype="multipart/form-data">
<p>
選擇文件:<input type="file" name="files">
<p>
選擇文件:<input type="file" name="files">
<p>
選擇文件:<input type="file" name="files">
<p>
<input type="submit" value="提交">
</form>
</body>
2、編寫處理表單的action,將原來保存文件的方法單獨寫一個方法出來方便共用:
[java] view plain
print?在CODE上查看代碼片派生到我的代碼片
/***
* 保存文件
* @param file
* @return
*/
private boolean saveFile(MultipartFile file) {
// 判斷文件是否為空
if (!file.isEmpty()) {
try {
// 文件保存路徑
String filePath = request.getSession().getServletContext().getRealPath("/") + "upload/"
+ file.getOriginalFilename();
// 轉存文件
file.transferTo(new File(filePath));
return true;
} catch (Exception e) {
e.printStackTrace();
}
}
return false;
}
3、編寫action:
@RequestMapping("filesUpload")
public String filesUpload(@RequestParam("files") MultipartFile[] files) {
//判斷file數組不能為空並且長度大於0
if(files!=null&&files.length>0){
//循環獲取file數組中得文件
for(int i = 0;i<files.length;i++){
MultipartFile file = files[i];
//保存文件
saveFile(file);
}
}
// 重定向
return "redirect:/list.html";
}

熱點內容
sql注入的過程 發布:2024-10-09 16:24:25 瀏覽:193
命令行ftp初始賬號密碼 發布:2024-10-09 16:24:24 瀏覽:289
腳本怎麼歸檔 發布:2024-10-09 16:08:07 瀏覽:295
雲平台搭建伺服器 發布:2024-10-09 16:03:47 瀏覽:635
用阿里雲搭建正向代理伺服器 發布:2024-10-09 15:53:07 瀏覽:505
手機qq空間緩存清理緩存 發布:2024-10-09 15:51:49 瀏覽:351
pc泰拉瑞亞伺服器ip 發布:2024-10-09 15:45:18 瀏覽:797
安卓怎麼延時 發布:2024-10-09 15:37:51 瀏覽:453
android音源 發布:2024-10-09 14:55:19 瀏覽:119
預編譯sql怎麼模糊查詢 發布:2024-10-09 14:31:24 瀏覽:217