精华内容
下载资源
问答
  • 往往开发环境和生产环境在环境部署时会遇到很多奇怪的问题,此次word文档下载就被卡住了,通过一番努力终于找到了原因,分享给大家。上传文件txt格式,内有方法详细的代码注释及原因说明,jar包比较常见,大家自行...
  • 文件名乱码 $filename = iconv("utf-8","gb2312",$examAswer->exam_name.'-'.$examAswer->username.'-'.time()); //防止有的浏览器下载之后中文乱码 ######下载word文件 header("Content-type: ...
    文件名乱码

    在这里插入图片描述

            $filename = iconv("utf-8","gb2312",$examAswer->exam_name.'-'.$examAswer->username.'-'.time());   //防止有的浏览器下载之后中文乱码
    
    下载word文件
            header("Content-type: application/vnd.ms-word");
            header("Content-Disposition:attachment;filename=".$filename.".docx");
            header('Cache-Control: max-age=0');
            $templateProcessor->saveAs("php://output");
    
    展开全文
  • 但是将站点部署到一个Windows XP 中文版上时,发现上传的附件在服务器的文件名为乱码,而URL是正常的,说明是操作系统编码的问题,windows中文版的编码好像是GBK(以前在Windows下开发时输出的系统编码好像是GBK,不...
  • 代码如下: if (context.Request.UserAgent.ToLower().IndexOf(“msie”, System.StringComparison.Ordinal) > -1)//IE浏览器 { context.Response.AddHeader(“content-disposition”, “filename=” + ...
  • 最近项目需要,读取指定文件夹下中文word文件,生成文件名列表。 直接读取会乱码文件名表名问题。 解决办法: 循环读出的文件名,转换编码 iconv('GB2312', 'UTF-8' $v)

    最近项目需要,读取指定文件夹下中文word文件,生成文件名列表。

    直接读取会乱码,文件名表名问题。

    解决办法:

    循环读出的文件名,转换编码

    iconv('GB2312', 'UTF-8' $v)

    展开全文
  • 通过freemarker生成一个word,解决生成的word用wps打开有问题的问题,解决word时中文文件名乱码问题,解决打开出word时打开的word出现问题的问题,出图片,解决动态列表.pdf
  • java下载文件名乱码解决方法

    java下载文件名乱码的解决方法

    参考文章:

    (1)java下载文件名乱码的解决方法

    (2)https://www.cnblogs.com/liyabin/p/7891073.html


    备忘一下。


    展开全文
  • 通过freemarker生成一个word 解决生成的word用wps打开有问题的问题,解决word时中文文件名乱码问题

    首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的。教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转到教程

                   
    

    通过freemarker制作word比较简单

    步骤:制作word模板。制作方式是:将模板word保存成为xml----xmlword模板中添加相应的标记----xmlword文件的后缀名改成ftl文件(要注意的是生成xml格式要是2003格式的xml,也就是说拿到的word模板得是2003格式的,否则用wps打开word将会出现问题)

     

    详细步骤如下:

    1. 模板制作(将要动态显示的数据打上标记,这个标记是freemarker中的EL标记,要注意的是,要控制值为空的情况,下面${(site.wzmc)?default(“”)}标识当网站名称为空的时候显示空值,如果这里如果不做控制,在实际项目中会显示错误!

    另外要注意的是:

    一、不要直接在word中替换掉文字的方式添加标记,这种会有问题。

    二、不要使用Eclipsexml文件进行格式化,这种生成word的时候会提示文档有问题。解决这个的问题是通过firstobjectwordxml进行格式化,对xml进行编辑。(使用firstobject打开带有中文文件名的xml文件的时候,会出现问题,建议使用英文word文档名称),或者使用XMLViewer

    三、firstobject下载地址:http://www.firstobject.com/dn_editor.htm

    其中,要想软件能够格式化xml代码,需要进行设置,设置方式是:打开firstobject----Tools-----Preferences------Format-----Tabs

    点击Indent,结果xml变成了有格式化的,效果图如下:

     

    常见标签:

    行标记:

    <w:p w:rsidR="00790C22"w:rsidRPr="00C07F75" w:rsidRDefault="00790C22"w:rsidP="004018B7">

     

    标识是一个表格的标签

    <w:tbl></w:tb1>

     

    表格行:

    <w:trw:rsidR="00790C22" w:rsidRPr="00C07F75"w:rsidTr="004018B7"></w:tr>

     

    表格中的单元格:

    <w:tc></w:tc>

     

     

    循环输出数据的方式

    <#list problemInfoInterview as problemInfo>

                     <w:tbl>

                        <w:tblPr>

                            <w:tblW w:w="0" w:type="auto"/>

                            <w:tblBorders>

                               <w:top w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                               <w:left w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                               <w:bottom w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                               <w:right w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                               <w:insideH w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                               <w:insideV w:val="single" w:sz="4" w:space="0" w:color="auto"/>

                            </w:tblBorders>

                            <w:tblLook w:val="04A0" w:firstRow="1" w:lastRow="0" w:firstColumn="1" w:lastColumn="0" w:noHBand="0" w:noVBand="1"/>

                        </w:tblPr>

                        <w:tblGrid>

                            <w:gridCol w:w="2235"/>

                            <w:gridCol w:w="6287"/>

                        </w:tblGrid>

                        <w:tr w:rsidR="00790C22" w:rsidRPr="00C07F75" w:rsidTr="004018B7">

                            <w:tc>

                               <w:tcPr>

                                   <w:tcW w:w="2235" w:type="dxa"/>

                                   <w:shd w:val="clear" w:color="auto" w:fill="auto"/>

                                   <w:vAlign w:val="center"/>

                               </w:tcPr>

                               <w:p w:rsidR="00790C22" w:rsidRPr="00C07F75" w:rsidRDefault="00790C22" w:rsidP="004018B7">

                                   <w:pPr>

                                      <w:jc w:val="center"/>

                                      <w:rPr>

                                          <w:rFonts w:ascii="Times New Roman" w:eastAsia="黑体" w:hAnsi="Times New Roman"/>

                                          <w:sz w:val="24"/>

                                          <w:szCs w:val="24"/>

                                      </w:rPr>

                                   </w:pPr>

                                   <w:r>

                                      <w:rPr>

                                          <w:rFonts w:ascii="Times New Roman" w:eastAsia="黑体" w:hAnsi="Times New Roman" w:hint="eastAsia"/>

                                         <w:sz w:val="24"/>

                                          <w:szCs w:val="24"/>

                                      </w:rPr>

                                      <w:t>问题名称</w:t>

                                   </w:r>

                               </w:p>

                            </w:tc>

                            <w:tc>

                               <w:tcPr>

                                   <w:tcW w:w="6287" w:type="dxa"/>

                                   <w:shd w:val="clear" w:color="auto" w:fill="auto"/>

                                   <w:vAlign w:val="center"/>

                               </w:tcPr>

                               <w:p w:rsidR="00790C22" w:rsidRPr="00C07F75" w:rsidRDefault="00790C22" w:rsidP="004018B7">

                                   <w:pPr>

                                      <w:jc w:val="left"/>

                                      <w:rPr>

                                          <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman"/>

                                          <w:sz w:val="24"/>

                                          <w:szCs w:val="24"/>

                                      </w:rPr>

                                   </w:pPr>

                                                                                    <w:r>

                                      <w:rPr>

                                          <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体"

                                             w:hAnsi="Times New Roman" w:hint="eastAsia" />

                                          <w:sz w:val="24" />

                                          <w:szCs w:val="24" />

                                      </w:rPr>

                                      <w:t>${(problemInfo.problemName)?default("")}</w:t>

                                   </w:r>

                               </w:p>

                            </w:tc>

                        </w:tr>

                        

     

                        这里面的行删除

     

                     </w:tbl>

                                                <w:p w:rsidR="007F35A8" w:rsidRPr="007F35A8" w:rsidRDefault="007F35A8" w:rsidP="007F35A8" />

                                                </#list>

     

    另外,往文档中插入图片的时候,在做模板的时候要往模板中插入一个图片,然后打开文档,然后替换掉base64转码的图片部分。

     

    1. 将图片资源变成base64加密后的图片的代码

    将图片转成base64串的方式:

    publicstatic String getImageString(String fileName)throws IOException {

         InputStream in =null;

         byte[] data =null;

         try {

            in =new FileInputStream(fileName);

            data =newbyte[in.available()];

            in.read(data);

            in.close();

         }catch (Exception e) {

            e.printStackTrace();

         }finally {

            if (in !=null){

               in.close();

            }

         }

         Base64Encoder encoder =new Base64Encoder();

         return data !=null ? encoder.encode(data) :"";

      }

    1. 下面是出word用的相关的类:

    读取路径用的TemplateUtil工具类

    package com.ucap.netcheck.utils;

     

    import java.io.File;

    import java.io.FileInputStream;

    import java.net.URL;

    import java.util.Properties;

     

    /**

     * @Title: TemplateUtil.java

     * @Package com.ucap.netcheck.utils

     * @Description:

     * @author

     * @date 2015-4-13下午9:07:58

     * @version V1.0

     */

    public class TemplateUtil {

       //模板所在的位置

       public static String reportTemplatePath;

       //模板的名称

       public static String templateFileName;

       

       static {

          URL resource = TemplateUtil.class.getClassLoader().getResource("template.properties");

          System.out.println(resource.getPath());

          

          File file = new File(resource.getPath());

          //生成文件输入流

          FileInputStream in = null;

          try {

              in = new FileInputStream(file);

          } catch (Exception e) {

             e.printStackTrace();

          }

          

          //生成properties对象

          Properties prop = new Properties();

          try {

              prop.load(in);

          } catch (Exception e) {

              e.printStackTrace();

          }

          

          reportTemplatePath = prop.getProperty("reportTemplatePath");

          templateFileName = prop.getProperty("templateFileName");

       }

       

       /*public static void main(String[] args) {

          System.out.println(TemplateUtil.reportTemplatePath);

       }*/

    }

    配置文件路径截图:

    FreeMarkerUtil工具类

    package com.ucap.netcheck.utils;

     

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.io.InputStream;

    import java.io.OutputStreamWriter;

    import java.io.Writer;

    import java.util.HashMap;

    import java.util.Map;

     

    import com.thoughtworks.xstream.core.util.Base64Encoder;

     

    import freemarker.template.Configuration;

    import freemarker.template.Template;

     

    /**

     *@Title: FreeMarkerUtil.java

     *@Package com.ucap.netcheck.utils

     *@Description: FreeMarker工具类

     *@authorZuoquan Tu

     *@date 2015-4-5下午6:02:11

     *@version V1.0

     */

    publicclass FreeMarkerUtil {

      privatestatic Configurationconfiguration =null;

      privatestatic Map<String, Template>allTemplates =null;

      

      static {

         configuration =new Configuration();

         configuration.setDefaultEncoding("utf-8");

         //configuration.setClassForTemplateLoading(FreeMarkerUtil.class,

         //   "../template");

         

         try {

            configuration.setDirectoryForTemplateLoading(

                   new File(TemplateUtil.reportTemplatePath));

         }catch (IOException e1) {

            e1.printStackTrace();

         }

         allTemplates =new HashMap<String, Template>();

         try {

           allTemplates.put("word",configuration.getTemplate(TemplateUtil.templateFileName));

         }catch (Exception e) {

            e.printStackTrace();

            thrownew RuntimeException(e);

         }

      }

      

      public FreeMarkerUtil() {

         

      }

      

      publicstatic File createDoc(Map<?, ?> dataMap,String type){

         String name ="temp" + (int) (Math.random() * 100000) +".doc";

         File f =new File(name);

         Template t =allTemplates.get(type);

         try {

            //这个地方不能使用FileWriter因为需要指定编码类型否则生成的Word

            //文档会因为有无法识别的编码而无法打开

            Writer w =new OutputStreamWriter(new FileOutputStream(f),"utf-8");

            t.process(dataMap, w);

            w.close();

         }catch (Exception ex) {

            ex.printStackTrace();

            thrownew RuntimeException();

         }

         return f;

      }

     

      publicstatic String getImageString(String fileName)throws IOException {

         InputStream in =null;

         byte[] data =null;

         try {

            in =new

    展开全文
  • 最近突然发生了乱码问题,同事已通过启动参数 java -Dfile.encoding=utf-8 -jar test.jar 修复了文件内容乱码问题 但涉及到下载文件到服务器、或在服务器进行文件创建的时候,文件名字乱码,但内容不乱码的问题 ...
  • 1.文件名乱码 2.文件内容乱码 文件内容乱码可能是由于用ServletOutputStream接收了response返回的输出流。 3.压缩包内的文件名乱码 这里使用的ZipEntry和ZipOutputStream是java.util.zip包下面的,不是网上建议的...
  • Jsp导出word文件名乱码的问题

    千次阅读 2011-01-13 19:54:00
    Jsp导出word文件名乱码 response.setContentType("application/msword"); response.setHeader("Content-Disposition","attachment; filename=测试中文"); 一般我们看见page contentType="text/html;...
  • 文件名有中文的话显示不出来,请看这里的处理办法: response.setHeader(“Content-Disposition”, “attachment;fileName=” + new String(filenamedisplay.getBytes(), “iso-8859-1”)); 这样就能下载显示中文...
  • Windows Git中文文件名乱码在Windows下使用git,安装包如下: https://git-for-windows.github.io/ 在使用git bash时git 默认中文文件名是 xx% 是因为 对0x80以上的字符 ...Ubuntu下解决解压zip文件中文文件名乱码问题...
  • ReportViewer自带的导出Excel与PDF、Word等功能,IE8下一切正常,但是IE7下面,选择保存文件一切正常,但是选择打开文件时,文件名变成了%E7%A4%BE%BC%9A.excl这样的文件名,请问怎么解决这个问题。
  • 问题:当下载文件时,文件名称为中文时,如果没有对中文进行处理就会出现乱码... ////解决下载文件时文件名乱码问题 byte[] fileNameBytes = fileName.getBytes(StandardCharsets.UTF_8); fileName = new String(...
  • 在使用Sublime Text3时,出现侧边栏中文文件名乱码的问题,如下: 解决方法 打开Preferences下的Settings-User,在Preferences.sublime-settings中添加"dpi_scale": 1.0,重启Sublime Text3即可。 { "color_scheme...
  • 【转】jsp实现文件下载与中文文件名乱码问题解决(3) JSP文件下载及出现getOutputStream() has already been called for this response的解决方法 http://iamin.blogdriver.com/iamin/1072546.html 一、...
  • 解决导出中文文件名乱码的方法 2011-09-07 10:20792人阅读评论(0)收藏举报 stringfirefoxexceluser /// <summary> /// 转换中文excel名称,防止乱码 /// </summary> /// <param name="fileName...
  • 文件名中文乱码解决

    2017-10-10 17:00:00
    上传过程中,如果文件名是中文,上传到服务器后,文件名会变成乱码。 有两种方式可以解决: 1.设置请求的字符编码: 1 request.setCharacterEncoding("UTF-8"); 2.设置解析request请求的编码方式 1 sfu....
  • 针对ubuntu中中文文件名乱码解决

    万次阅读 2011-09-11 15:42:38
    备注:该问题始于我在ubuntu中解压一个源自windows系统中用RAR压缩的压缩包,在ubuntu中解压后发现中文文件名均是乱码,上网搜到了如下的解决方案,其实最好的方法是在用winrar从新解压。。。。。或者我该在wine中...
  • 解决java下载文件中文文件名乱码问题(ie,谷歌,火狐) response.setCharacterEncoding(&amp;quot;utf-8&amp;quot;); response.setContentType(&amp;quot;application/msword&amp;quot;); ...
  •  page contentType="application/msword;charset=utf-8"%>    String fileName = new String("这是一个例子.doc".getBytes("GBK"),"ISO8859_1");   response.addHeader("Content-Disposition", ...
  • String filepath = "c:/";//需要下载的文件路径  String filename = ... //解决中文文件名乱码问题  if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") > 0)  filename = new String(fil
  • 刚开始找来找去,以为是复制粘贴的原因,复制时复制了特殊字符导致的,结果修改源文件后发现生成的文件名还是乱码。后来在执行脚本时,提示"sh $'\r': 未找到命令"的错误,百度了一下,才发现原来是编码的问题导致的...
  • windows下的zip文件,在linux下解压时,经常会出现文件名乱码的情况。 主要原因是,在windows下压缩文件时,是以系统的默认编码(gbk,gb18030)来压缩,zip文件并没有声明编码的格式,因此,linux下解压缩时...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,976
精华内容 2,790
关键字:

word文件名乱码解决