J'utilise actuellement Visual Studio 2008 pour mon application ASP .NET. J'essaye de server un dossier d'Excel par l'intermédiaire de l'objet de réponse. Le problème est que je n'arrive pas à définir le titre du fichier en japonais. Si je le mets au nom de fichier japonais, il est renvoyé comme caractère poubelle. J'utilise un navigateur IE japonais dans un WinXP japonais.ASP .NET Télécharger le fichier avec le nom de fichier japonais
Response.AppendHeader("Content-Type", "application/vnd.ms-excel");
Response.AddHeader("Content-Disposition", String.Format("attachment; filename=\"{0}\"", "日本語.xls"));
OU
Response.AddHeader("Content-Disposition", String.Format("attachment; filename=\"{0}\"", Server.HtmlEncode("日本語.xls")));
Je l'ai déjà essayé de changer le codage Shift-JIS
Response.Charset = "Shift_JIS";
ou
Response.Charset = "sjis";
Toutes les idées? Btw, j'ai eu le même problème avec Visual Studio 2005 aussi.
Je ne crois pas cela. ça a marché. – Nap
J'ai vu cette solution pour Java pour empêcher le nom de fichier ouvert d'être défini sur un nom codé en Unicode dans le dossier temporaire. String fileName = "デ ー タ 出力 .txt"; Réponse HttpServletResponse = requestCondition.getResponse(); response.setContentType ("application/plain"); String dFilename = new Chaîne (nomFichier.getBytes ("Windows-31J"), "ISO-8859-1"); response.setHeader ("Content-Disposition", "pièce jointe; nomfichier =" + nomFichierD); response.setCharacterEncoding ("WINDOWS-932"); – Nap