最近在做一个新闻发布系统,后台用的的编辑器是FCKeditor, 一个开源的编辑器。

 

  

 

      具体使用啊,配置啊,网上很多教程,可是编辑器里上传的图片的路径死活获取不到。网上有人介绍大概有两种方式就是通过正则表达式来析取,另外一种是用FCKeditor里的JS。试了两种方式,JS没能实现,正则表达式却只能提取一张图片的路径,上传了多张图片就会出错,而我正则表达式有不大懂,只有另辟蹊径。

 

 

 

      从编辑器里传过了的是html格式的代码,那么就可以编程来解析DOM了,这样就可以得到imgtr,td等标签的集合,然后就能找到图片路径了吗,想到一个以前用的一个现成的工具htmlparser, htmlparser就是用来解析htmljava工具,简单到你只需要去指定规则,然后得到你想要的节点,具体可以去查些教程看看。这里从editor传过来的content,然后解析content,得到img标签集,然后找到图片路径,代码如下:

 

 

 

public String getImageURL(String txt) throws ParserException{

  String img=null;

  Parser parser;

  NodeFilter filter=new TagNameFilter("img");

  parser = Parser.createParser(txt,"GB2312");

  NodeList nodelist=parser.parse(filter);

  if(nodelist.size()!=0){

   Node[] nodes=nodelist.toNodeArray();

   for(int i=0;i<nodes.length;i++){

    ImageTag image=(ImageTag) nodes[i];

    if("".equals(img)){

     img=image.getImageURL().toString();

    }else{

     img=img+","+image.getImageURL().toString();

    }

   }

  }

  return img;

 }

 

 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fdemon/archive/2008/12/20/3561775.aspx

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐