[問題] asp.net fileupload 檔名變成亂碼

看板Web_Design作者 (.新拍子 新節奏)時間15年前 (2010/11/18 19:18), 編輯推噓2(203)
留言5則, 2人參與, 最新討論串1/1
各位好 這次遇到的是關於亂碼的問題 我用asp裡面的fileupload上傳一個檔案(或是移到本機某端), 若是上傳中文檔 上傳過去之後新的檔名會變成亂碼, 不知道有沒有人遇過這個問題? 謝謝 程式如下 <%@ Page Language="VB" ContentType="text/html" ResponseEncoding="big5"%> <%@ Import Namespace="System.IO" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "" rel="nofollow">http://www.w3.org/TR/html4/loose.dtd"> <script Language="VB" runat="server"> Sub BtnUpload_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnUpload.Click Label1.text="" Label2.text="" Label3.text="" Label4.text="" if FULData.HasFile then DIM str1=FULData.PostedFile.FileName DIM str2() AS String =Split(str1,"\") DIM str3="card\" & str2(str2.length-1) DIM str4=Server.MapPath(str3) CALL FileInfo if File.Exists(str4) then Label4.Text="檔案已存在" else if FULData.PostedFile.ContentLength> 4000000 then Label4.Text="檔案過大" else FULData.PostedFile.SaveAs(str4) If FULData.PostedFile.ContentLength=0 then Label4.Text="上傳失敗" Else Label4.Text="上傳成功" End If end if end if else Label4.Text="未選擇檔案" end if End Sub Sub FileInfo() Label1.Text=FULData.PostedFile.Filename Label2.Text=FULData.PostedFile.ContentType Label3.Text=FULData.PostedFile.ContentLength & "位元組" Label4.Text="" End Sub </script> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=big5"> <title>無標題文件</title> </head> <form id="form1" runat="server"> <div style="text-align: center"> &nbsp;<asp:FileUpload ID="FULData" runat="server" /><br /> <asp:Button ID="BtnUpload" runat="server" Text="上傳" /><br /> <br /> <asp:Label ID="LblShow" runat="server" Font-Size="24pt" ForeColor="Red" Font-Bold="True"></asp:Label></div> </div> <td class="style2"><div align="left">檔案名稱: <asp:Label ID="Label1" runat="server" /> </div></td> </tr> <tr> <td class="style2"><div align="left">檔案類型: <asp:Label ID="Label2" runat="server" /> </div></td> </tr> <tr> <td class="style2"><div align="left">檔案長度: <asp:Label ID="Label3" runat="server" /> </div></td> </tr> <tr> <td class="style2"><div align="left">上傳狀態: <asp:Label ID="Label4" runat="server" /> </div></td> </tr> </table> </form> <body> </body> </html> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.29.71

11/18 19:37, , 1F
ASP.NET預設是Unicode的 我試過從日文到俄文都正常
11/18 19:37, 1F

11/18 19:39, , 2F
有你的程式碼可以提供一部分嗎@@?
11/18 19:39, 2F

11/18 19:43, , 3F
ok,等我一下~
11/18 19:43, 3F
※ 編輯: punding 來自: 114.32.29.71 (11/18 19:46)

11/18 20:24, , 4F
把第一行的ResponseEncoding="BIG5"刪掉試試?
11/18 20:24, 4F

11/18 20:27, , 5F
可以了耶!! 你真是太神了XD 謝謝你啊
11/18 20:27, 5F
文章代碼(AID): #1CvGk0jC (Web_Design)