精华内容
下载资源
问答
  • 主要介绍了java根据富文本生成pdf文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 遇到过坑,修改过的百度富文本可以自定义保存路径和文件名格式
  • /*html富文本写成txt*/ public static String WriterTxt(String content) throws IOException{ String real_path = "E:\\txtPath.txt"; String txtPath=""; if (null != content && !"".equals(content))...

    1、写成txt文件

    /*html富文本写成txt*/
    public static String WriterTxt(String content) throws IOException{
       String real_path = "E:\\txtPath.txt";
       String txtPath="";
       if (null != content && !"".equals(content)) {
          content = content.trim();
          //查看默认地址是否存在
          File file = new File(real_path);
          if (!file.getParentFile().exists()) {
             file.getParentFile().mkdirs();
          }
          OutputStreamWriter osw =new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
          osw.write(content);
          osw.close();
          //文件上传
          String fileName =  Tools.get32UUID();
           txtPath=FileUpload.txtUpload(real_path);
       }
       return  txtPath;
    }

    2、上传文件

    public  static String txtUpload(String path) throws IOException {
       String ossImgPath="";
       try {
          File outputfile = new File(path);
          if (!outputfile.getParentFile().exists()) {
             outputfile.getParentFile().mkdirs();
          }
          FileInputStream inputStream = new FileInputStream(outputfile);
          MultipartFile mf = new MockMultipartFile(outputfile.getName(), outputfile.getName(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
          String imgPath=uploadLocal(mf, "File");
          ossImgPath=imgPath;
       } catch (IOException e) {
          e.printStackTrace();
       }
       return ossImgPath;
    }

    3、本地读取阿里云txt文件内容

    public static String ReadUrl(String FilePath) throws IOException{
    		String read;
    		String readStr ="";
    		try{
    			URL url =new URL(FilePath);
    			HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();
    			urlCon.setConnectTimeout(5000);
    			urlCon.setReadTimeout(5000);
    			BufferedReader br =new BufferedReader(new InputStreamReader( urlCon.getInputStream(),"utf-8"));
    			while ((read = br.readLine()) !=null) {
    				readStr = readStr + read;
    			}
    			br.close();
    		}
    		catch (IOException e) {
    			// TODO Auto-generated catch block
    			readStr ="f";
    		}
    		return readStr;
    	}

    4、使用实例

    @AutoLog(value = "文章管理-编辑")
    @ApiOperation(value="文章管理-编辑", notes="文章管理-编辑")
    @PutMapping(value = "/edit")
    public Result<?> edit(@RequestBody NsArticle nsArticle) {
       nsArticle.setUpdateTime(new Date());
       try {
          nsArticle.setContent(Tools.WriterTxt(nsArticle.getContent()));
       } catch (Exception e) {
          return Result.error(e.getMessage());
       }
       nsArticleService.updateById(nsArticle);
       return Result.OK("编辑成功!");
    }

    展开全文
  • springboot文件上传整合富文本编辑器
  • 另外这种方法不会保存富文本的一些样式,但是足够了。至于如何转换就需要借助poi-tl的模板功能和工具类。 想要具体的Demo请看:https://gitee.com/xuwangcheng/poi-tl-html-to-word 有疑问请加QQ群:468324085 作者...
  • 我在我的项目中使用了Kindeditor富文本编辑器(或许你使用的是Ueditor\ckeditor),通过富文本编辑器编辑文章的内容然后存储到数据库中,再从数据库中读取显示到网页上来。 在这个过程中,我遇到一个问题,当我在...
  • 今天小编就为大家分享一篇layui 富文本赋值,取值,取纯文本值的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 富文本数据存储及回显

    万次阅读 2018-12-11 14:18:03
    存储:1、文件存储,将富文本数据保存成html文件,然后将文件上传到文件服务器;2、直接将html内容存储到数据库中。这篇主要介绍第二种。 第一步:获取富文本编辑器内容,我这里就手动编写了一段很小的html数据。 ...

    开发者应该都使用过富文本编辑器插件吧,对于富文本插件编辑的内容我们需要怎么存储及回显呢,我来简单介绍下。

    存储:1、文件存储,将富文本数据保存成html文件,然后将文件上传到文件服务器;2、直接将html内容存储到数据库中。这篇主要介绍第二种。

    第一步:获取富文本编辑器内容,我这里就手动编写了一段很小的html数据。

    一个图片标签,里面放着一个图片链接,html里面双引号被转义了,会与字符串双引号冲突,使用spring mvc一般不需要手动转义,框架会帮我们处理。

    第二步:处理特殊标签,我使用的是mysql数据库,像尖括号这种特殊表会被数据库误会,也是为了防止被人恶意在html内容中嵌入脚本代码。

    这里使用的是org.springframework.web.util.HtmlUtils这个工具类,属于Springboot web包里。

    其中htmlEscapeHex方法是将所有特殊字符转义为对应的数字以十六进制格式引用,htmlEscape方法是将所有特殊字符转义到对应的本质引用,htmlEscapeDecimal方法是将所有特殊字符以十进制格式转义到对应的数字引用。具体是什么样子的呢,来看下控制台结果。

    第三步,存储,一般富文本内容都是很大的,所以对应数据库字段我们应该选用longtext类型,如果选用varchar这些有长度的字段,可能会报data too long错误。

    第四步,读取。

    第五步,解析,使用的也是HtmlUtils这个工具类中的解析方法。

    解析只需要使用到一个htmlUnescape方法。

    可以看到控制台结果,完美解析。将解析后的html内容返回到前端,回显到富文本框里面就行了。

    欢迎指正或者提出更好的建议。

    展开全文
  • 演示详见链接 添加链接描述 一、安装 npm install mavon-...//富文本 import mavonEditor from 'mavon-editor' import 'mavon-editor/dist/css/index.css' Vue.use(mavonEditor) 三、vue中使用 <mavon-edit...

    演示,API 文档说明详见链接
    添加链接描述

    一、安装

    npm install mavon-editor --save
    

    二、在main.js中全局注册

    //富文本
    import mavonEditor from 'mavon-editor'
    import 'mavon-editor/dist/css/index.css'
    
    Vue.use(mavonEditor)
    

    三、vue中使用

    <mavon-editor ref="md"
                   v-model="description"
                  :autofocus="false"
                   defaultOpen="preview"
                   :language="languageEditor"
                    @imgAdd="$imgAdd"/>
    
    data() {
              return {
                languageEditor:'zh-CN',//多语言显示富文本
             }
     }
    
    created:function () {
              if(this.languageID==1){
                this.languageEditor='zh-CN'
              }else if(this.languageID==2){
                this.languageEditor='en'
              }else{
                this.languageEditor='de'
    }
    
    methods::function () {
    			//富文本上传图片
                $imgAdd(pos, $file){
                  // 第一步.将图片上传到服务器.
                  var formdata = new FormData();
                  formdata.append('file', $file);
                  axios({
                    url: '/admin/sys-file/upload',
                    method: 'post',
                    data: formdata,
                    headers:this.headers,
                  }).then((res) => {
                    // 第二步.将返回的url替换到文本原位置![...](0) -> ![...](url)
                    console.log(res)
                    var url='http://minio.rfxxkj.com/lsfw/'+res.data.data.fileName;
                    this.$refs.md.$img2Url(pos, url);
                  })
                },
       }
    

    这个富文本支持多语言化,用language属性控制,默认中文,暂支持 zh-CN: 中文简体 , en: 英文 , fr: 法语, pt-BR: 葡萄牙语, ru: 俄语, de: 德语, ja: 日语

    :autofocus="false"关闭自动聚焦富文本

    上传服务器的headers和url要自己配置修改下,上传成功的url也要根据自己的路径进行调整。这样图片才能正常显示不破图。

    四、md格式的文本的解析

    使用marked框架来解析。

    npm install marked --save
    
    import marked from ‘marked‘
    
    <div v-html="readmeContent" ></div>
    
    //这里的newDate[0].content就是取出来的md格式的文本内容  
    this.readmeContent=marked(newData[0].content||‘‘,{
       sanitize:true
    })
    

    存在问题:现在纯粹的只是将其解析成了html文件,相应的样式查了下,可以用highlight.js,但折腾了好久都没引用成功,最后为了应急,只能自己手写样式了。等之后再仔细看看marked的官方文档再说…

    五、前端展示mavonEditor文本,如果四不成功可以使用五。
    安装完依赖后并在全局引入完,即可直接使用。对应的属性请详见API文档。

    <mavon-editor :toolbars="markdownOption" :box-shadow="false" v-model="msg" :subfield="false" style="border: 0" preview-background="#FFF" default-open="preview"/>
    
    
    
          markdownOption: {
            toolbarsFlag: false,
            subfield: false
          },
    
    展开全文
  • 简易的富文本编辑器保存网络图片到本地的方法,简单易懂易用
  • 富文本数据保存

    千次阅读 2019-02-14 17:13:42
    Bootstrap提供了一个叫wysiwyg的富文本组件,用来显示和编辑富文本数据,但如何将编辑后的数据保存到mysql数据库,却不得而知。另外,如何将mysql数据库中的数据显示到wysiwyg也不得而知,对于这两个问题,让我来...

    原文:https://blog.csdn.net/qing_gee/article/details/49331543

    Bootstrap提供了一个叫wysiwyg的富文本组件,用来显示和编辑富文本数据,但如何将编辑后的数据保存到mysql数据库,却不得而知。另外,如何将mysql数据库中的数据显示到wysiwyg也不得而知,对于这两个问题,让我来告诉你解决方案!

    一、效果展示
    首先,我们先来看看效果如何: 


    富文本中有一张图片,还有一个数字列表
    我们可以看到编辑后的数据保存成功,以及保存后对应的展示。
    二、富文本
    度娘对于富文本的解释如下:

    富文本格式(Rich Text Format, 一般简称为RTF)是由微软公司开发的跨平台文档格式。大多数的文字处理软件都能读取和保存RTF文档。RTF是Rich TextFormat的缩写,意即多文本格式。这是一种类似DOC格式(Word文档)的文件,有很好的兼容性,使用Windows“附件”中的“写字板”就能打开并进行编辑。RTF是一种非常流行的文件结构,很多文字编辑器都支持它。一般的格式设置,比如字体和段落设置,页面设置等等信息都可以存在RTF格式中,它能在一定程度上实现word与wps文件之间的互访。

    如果说富文本不包含图片,我们可以使用普通的html转码方法,见标题四;如果富文本包含图片,普通的html转码已经满足不了我们了,就需要用到jquery.base64.js,见标题三。

    那么同时,我们看一看mysql字段的定义:

    `description` longtext NOT NULL COMMENT '项目详细描述',

    字段类型为longtext(LongText 最大长度4294967295个字元 (2^32-1),虽然我也不知道到底有多大)。

    三、jquery.base64
    ①、引入jquery.base64.js

    <script type="text/javascript" src="${ctx}/components/jquery/jquery.base64.js"></script>

    同时设置utf-8编码,确保中文不乱码.

    $.base64.utf8encode = true;

    ②、富文本表单提交

    var editor = "<input type='hidden' name='" + $this.attr("name") + "' value='"
                            + $.base64.btoa($this.html()) + "' />";


    关键代码:将富文本对象的html值转换为base64,然后封装到表单form中。 
    详细见如下(一整个form提交的表单封装,参照与dwz框架):

    /**
     * 带文件上传的ajax表单提交
     * 
     * @param {Object}
     *            form
     * @param {Object}
     *            callback
     */
    function iframeCallback(form, callback) {
        YUNM.debug("带文件上传处理");
    
        var $form = $(form), $iframe = $("#callbackframe");
    
        // 富文本编辑器
        $("div.editor", $form).each(
                function() {
                    var $this = $(this);
                    var editor = "<input type='hidden' name='" + $this.attr("name") + "' value='"
                            + $.base64.btoa($this.html()) + "' />";
                    $form.append(editor);
                });
    
        var data = $form.data('bootstrapValidator');
        if (data) {
            if (!data.isValid()) {
                return false;
            }
        }
    
        if ($iframe.size() == 0) {
            $iframe = $("<iframe id='callbackframe' name='callbackframe' src='about:blank' style='display:none'></iframe>")
                    .appendTo("body");
        }
        if (!form.ajax) {
            $form.append('<input type="hidden" name="ajax" value="1" />');
        }
        form.target = "callbackframe";
    
        _iframeResponse($iframe[0], callback || YUNM.ajaxDone);
    }
    function _iframeResponse(iframe, callback) {
        var $iframe = $(iframe), $document = $(document);
    
        $document.trigger("ajaxStart");
    
        $iframe.bind("load", function(event) {
            $iframe.unbind("load");
            $document.trigger("ajaxStop");
    
            if (iframe.src == "javascript:'%3Chtml%3E%3C/html%3E';" || // For
            // Safari
            iframe.src == "javascript:'<html></html>';") { // For FF, IE
                return;
            }
    
            var doc = iframe.contentDocument || iframe.document;
    
            // fixing Opera 9.26,10.00
            if (doc.readyState && doc.readyState != 'complete')
                return;
            // fixing Opera 9.64
            if (doc.body && doc.body.innerHTML == "false")
                return;
    
            var response;
    
            if (doc.XMLDocument) {
                // response is a xml document Internet Explorer property
                response = doc.XMLDocument;
            } else if (doc.body) {
                try {
                    response = $iframe.contents().find("body").text();
                    response = jQuery.parseJSON(response);
                } catch (e) { // response is html document or plain text
                    response = doc.body.innerHTML;
                }
            } else {
                // response is a xml document
                response = doc;
            }
    
            callback(response);
        });
    }
    

     

    ③、富文本数据展示

    $('#editor').html($.base64.atob(description, true));

    通过base64对数据库中保存的html代码进行解码。

    ④、wysiwyg组件
    关于wysiwyg组件封装代码,我已上传到CSDN的代码库,可详细参照。

    四、普通html转码做法
     

    function html_encode(str) {
        var s = "";
        if (str.length == 0)
            return "";
        s = str.replace(/&/g, "&gt;");
        s = s.replace(/</g, "&lt;");
        s = s.replace(/>/g, "&gt;");
        s = s.replace(/ /g, "&nbsp;");
        s = s.replace(/\'/g, "&#39;");
        s = s.replace(/\"/g, "&quot;");
        s = s.replace(/\n/g, "<br>");
        return s;
    }
    
    function html_decode(str) {
        var s = "";
        if (str.length == 0)
            return "";
        s = str.replace(/&gt;/g, "&");
        s = s.replace(/&lt;/g, "<");
        s = s.replace(/&gt;/g, ">");
        s = s.replace(/&nbsp;/g, " ");
        s = s.replace(/&#39;/g, "\'");
        s = s.replace(/&quot;/g, "\"");
        s = s.replace(/<br>/g, "\n");
        return s;
    }

    一般情况下,使用上面两个方法对html数据进行编码和解码,但是对于图片的保存却无能为力。

    展开全文
  • ossCliendEndPoint 阿里云文件存储的endpoint,在仓库概览里面可以看到 useCDN true/false是否启用cdn加速 cdnEndPoint cdn加速域名配置 useLocalStorager 是否启用本地存储 useAsynUploader 是否启用异步上传 二、...
  • 富文本保存到数据库

    千次阅读 2021-01-08 15:27:58
    标题 富文本保存到数据库 -idea String html = "<p wx:nodeid='135'>1.地方</p><p wx:nodeid='156'>2.第三方"; // 前端传过来的富文本内容 String temp = HtmlUtils.htmlEscapeHex(html);...
  • summernote富文本

    2018-04-08 10:58:08
    富文本
  • Bootstrap wysiwyg,将富文本数据保存到mysql

    万次阅读 多人点赞 2015-12-24 14:45:51
    Bootstrap提供了一个叫[wysiwyg](http://www.bootcss.com/p/bootstrap-wysiwyg/)的富文本组件,用来显示和编辑富文本数据,但如何将编辑后的数据保存到mysql数据库,却不得而知
  • 今天公司一个老项目需要集成富文本进去,前端框架使用的是layui,经过一番考虑之后,我决定选择TinyMCE这款富文本工具 一、TinyMCE是什么? TinyMCE是一个轻量级的基于浏览器的所见即所得编辑器,由JavaScript写成。...
  • 发送邮件功能里面存放的图片是图片地址,但因为局域网限制,图片地址无法被外网所识别,被拦截了,要...有没有好的富文本插件,支持图片,文字,视频(最好支持),直接存放到数据库中,发送邮件的时候直接读取数据库?
  • 经过修改的百度富文本编辑器ueditor.jar,实现自定义上传文件存储路径,不再局限于存储在项目路径下,具体看http://blog.csdn.net/maijia0754/article/details/79360788
  • 保存富文本编辑器内容

    千次阅读 2019-07-11 20:57:09
    在这里我使用的是layUI的layedit模块,layUI中的富文本编辑器模块。 第一步我们先将页面搭建好,引入layui.layedit模块和layui.form模块。form模块可用于表单的数据验证和提交 在form表单中建一个textarea <...
  • .net core 富文本例子

    2021-01-11 17:46:51
    .net core 完美运行 UEditor 1.4.3 例子.有uditor.json配置.直接可以用和运行.可以保存图片和文件.直接拿来就可以使用.
  • PMEdit--富文本

    2019-05-12 03:02:28
    2、文本框的设计是为了给PMGrid表格作为文本输入用的,PMGrid是一个美丽的类似于Excel的富文本表格,由于此表格正在开发中暂时就不开源了,样例可以看看源代码中的PMGrid.exe,如果有需要也可以给我发邮件feirench@...
  • 最近在弄一个新闻发布项目,需要使用到百度富文本编辑器,使用过程中发现很多坑,趟了很久才走出来,不多说了,直接上代码 步骤1,从百度富文本官网下载源码...
  • GeckoSafari - WebkitChrome - Webkit 升级到 BlinkOpera - Presto 升级到 Webkit 升级到 BlinkHTMLHTML叫做超文本标记语言(Hypertext Markup Language) ,用于搭建网页的结构HTML是一种纯文本格式的文件,...
  • 改动配置文件C:\ProgramData\MySQL\MySQL Server 5.7\my.ini,一共改了两行 2.jdbc连接写法改变 改之前:characterEncoding=UTF-8 改之后:character_set_server=utf8mb4 3.改动存储表情的字段编码为utf8mb4(经实测...
  • C# 富文本框以当前时间保存文件 提示:这里简述 RichTextBox以当前时间保存文件的简易方法 一、新建工程 1、新建C# window窗体 (.net Framework)工程; 2、将Form框架中添加RichTextBox控件,将属性命名为...
  • //将后台拿到的BLOB类型的值放在前台富文本显示   java代码:   info.setBlob(blobContent); //省略前面数据库取值步骤,这里假设blobContent为从数据库取到的值,info为实体。 HttpSession session=...
  • 首先配置好富文本,详情访问富文本样式不变配置 打开oss文件找到流式上传 仔细看下文档 代码配置 let OSS = require('ali-oss') // 引入ali-oss插件 const client = new OSS({ region: 'oss-cn-shanghai',//根据那...
  • NodeJs将富文本写入HTML文件

    千次阅读 2018-06-27 14:33:10
    富文本写入html文件 # 判断目录是否存在,如果不存在就创建目录 exists = fs.existsSync("D:/files/sps/shtml"); if(!exists){ fs.mkdirSync("D:/files/sps/shtml");  } # 将富文本...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,263
精华内容 9,705
关键字:

富文本文件存储