html转义字符及css清除

1. [代码][Java]代码     
import java.util.HashMap;
import java.util.Map;
 
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
 * 静态文件处理的一些便捷服务
 * @author Kettas
 * 4:27:25 PM
 */
public class HTMLServices {
    private static Log log=LogFactory.getLog(HTMLServices.class);
 
    /**
     * 清除html代码
     * <p>所有包括在‘&lt;‘与‘&gt;‘之间的内容全部都会被清除掉,并返回</P>
     * @param args
     * @return String
     */
    public static String clearHTMLToString(String args){
        return clearHTMLToString(args,false);
    }
    /**
     * 清除html代码
     * <p>所有包括在‘&lt;‘与‘&gt;‘之间的内容全部都会被清除掉,并返回</P>
     * @param args
     * @param replaceNull 是否替换空格等制表符
     * @return String
     */
    public static String clearHTMLToString(String args,boolean replaceNull){
        if(StringUtils.isEmpty(args)){
            return "";
        }
        args= args.replaceAll("(?is)<(.*?)>","");
        if(replaceNull){
            args = args.replaceAll("\\s*|\t|\r|\n","");
        }
        return args;
    }
    /**
     * 清除html代码
     * <p>所有包括在‘&lt;‘与‘&gt;‘之间的内容全部都会被清除掉,并指定返回的长度</P>
     * @param args
     * @return String
     */
    public static String clearHTMLToString(String args,int maxSize){
        return clearHTMLToString(args, maxSize, "");
    }
    /**
     * 清除html代码
     * <p>所有包括在‘&lt;‘与‘&gt;‘之间的内容全部都会被清除掉,并指定返回的长度</P>
     * @param args
     * @return String
     */
    public static String clearHTMLToString(String args,int maxSize,String replace){
        args=clearHTMLToString(args);
        if(maxSize<=0){
            return args;
        }
        if(args.length()<=maxSize){
            return args;
        }
        return args.substring(0,maxSize).concat(replace);
    }
    /**
     * 将字符串截取指定长度
     * @param args
     * @param maxSize
     * @param replace
     * @return String
     */
    public static String clearHTMLToSize(String args,int maxSize,String replace){
        if(args.length()<=maxSize){
            return args;
        }
        return args.substring(0,maxSize).concat(replace);
    }
//  /**
//   * 从css样式文件中读取&lt;Style>样式
//   * @return String
//   */
//  public static  String getStyleToString(File file){
//      Document doc=null;
//      Elements fileList=null;
//      try{
//          doc = Jsoup.parse(file, Config.DEFAULT_TYPE);
//          fileList=doc.select("style");
//          String css= doc.data();
//          if(css.length()<1){
//              return css;
//          }
//          /*
//           * 过滤掉注释语句
//           */
//          css=css.replaceAll("(<[^>]*>)", "");
//          return css;
//      }catch (Exception e) {
//          log.error(e);
//      }finally{
//          doc=null;
//          fileList=null;
//      }
//      return "";
//  }
//  /**
//   * 从css样式文件中读取&lt;Style>样式
//   * @return Map&lt;String,String>
//   */
//  public static  Map<String,String> getStyleToMap(File file){
//      Map<String, String> css=new HashMap<String, String>();
//      try{http://www.bizhizu.cn/shouhui/?
//          String cssStyle=getStyleToString(file);
//          if(cssStyle.trim().length()<1){
//              return css;手绘图片
//          }
//          /*
//           *
//           */
//          String[] style=cssStyle.split("\\}");
//          String[] map=new String[2];
//          for (String _style : style) {
//              map=_style.split("\\{");
//              css.put(map[0],map[1]);
//          }
//          return css;
//      }catch (Exception e) {
//          log.error(e);
//      }
//      return css;
//  }
    /**
     * 从style样式中读取CSS的属性
     * <pre>
     * String ;
     * String fontSize=HTMLServices.getStyleNameValue(style,"font-size");</pre>
     * @param style
     * @param styleName
     * @return String
     */
    protected static  String getStyleToString(String style,String styleName){
        try{
            Map<String,String> css=cssToMap(style);
            return css.get(styleName);
        }catch (Exception e) {
            log.error(e);
        }
        return "";
    }
    public static String filterChare(String msg,String ...chars){
        for(String _char:chars){
            msg=msg.replace(_char,"");
        }
        return msg;
    }
    public static String mapToCSS(Map<String, String> css){
        StringBuffer style=new StringBuffer();
        for(Map.Entry <String,String> entry : css.entrySet()){
            style.append(style.length()>0?",":"");
            style.append(entry.getKey()).append(":").append(entry.getValue());
        }
        return style.toString();
    }
    /**
     * 将style封装成键值对
     * <pre>
     * String ;
     * Map&lt;String,String> css=HTMLServices.getStyleToMap(style);
     * System.out.println("font-size:"+css.get("font-size"));
     * </pre>
     * @param style
     * @return Map
     */
    public static  Map<String, String> cssToMap(String style){
        Map<String, String> map=new HashMap<String, String>();
        try{
            if(style==null||StringUtils.isEmpty(style)){
                return map;
            }
            style=style.toLowerCase();
            style=style.split("\\}")[0];
            String[] csss=style.split("\\;");
            for(int i=0,iSzie=csss.length;i<iSzie;i++){
                String [] cssStyle=csss[i].split("\\:");
                for (int j = 0,jSize=cssStyle.length; (j+1) < jSize; j+=2) {
                    map.put(cssStyle[j].replace(" ", "").trim(), cssStyle[j+1].toString().trim());
                }
            }
        }catch (Exception e) {
            log.error(e);
        }
        return map;
    }
//  /**
//   * 从css样式中读取cssName的属性(注意,css是标准css)
//   * @param css
//   * @param cssName
//   * @param styleName
//   * @return String
//   */
//  public static  String getStyleNameValue(File file,String cssName,String styleName){
//      try{
//          String style=getStyleToMap(file).get(cssName);
//          return getStyleNameValue(style, styleName);
//      }catch (Exception e) {
//          log.error(e);
//      }
//      return "";
//  }
     
}

html转义字符及css清除

时间: 2024-10-13 22:27:57

html转义字符及css清除的相关文章

css清除浮动的方法总结

在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了,下面总结8种清除浮动的方法,测试已通过 ie chrome firefox opera,需要的朋友可以参考下 清除浮动是每一个 web前台设计师必须掌握的机能.css清除浮动大全,共8种方法. 浮动会使当前标签产生向上浮的效果,同时会影响到前后标签.父级标签的位置及 width height 属性.而且同样的代码,在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了.解决浮动引起的问题有多种方法,但有些方法在浏览器兼容性方面还有问

css 清除浮动 兼容IE+, FF

上代码: <!doctype html> <html> <head> <meta charset="utf-8"> <title>css 清除浮动 兼容IE+, FF</title> <style type="text/css"> .clearfix { *zoom: 1; } .clearfix:before, .clearfix:after { display: table; c

css 清除浮动的各种方法

1.为什么要清除浮动 在网页中,DIV一般都是嵌套的,外面称为窗口,里面的DIV存放内容,如果不浮动的话,如下面这段代码<div style=”background:#ccc;”> <div style=”float:left; width:30%; height:40px;background:#333; “> Content here</div> </div>本来我们期望看到的是,外面背景为#ccc的层包含了里面背景为#333的层,但实际上,外面的层在显

css清除浮动各方法与原理

说到清除浮动的方法,我想网络上应该有不下7,8的方法,介绍这些方法之前,想下为什么清除浮动? 再次回到float这个属性,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列. 这就产生了一个问题:浮动元素所在父元素不会自动伸长以便闭合浮动元素,任其“红杏出墙”,这显然不符合我们的“伦理观”,所以要“抓回来”施以家法:那么如何抓呢? 提起css,提起(x)html,首先进入脑海的是楚楚动人的页面吗?不,首先应该是这楚楚动人的页面的背后的“楚楚冻人

css清除浮动float的三种方法总结【转载自https://my.oschina.net/leipeng/blog/221125】

摘要: css清除浮动float的三种方法总结,为什么清浮动?浮动会有那些影响?     一.抛一块问题砖(display: block)先看现象: 分析HTML代码结构: <div class="outer">     <div class="div1">1</div>     <div class="div2">2</div>     <div class="div3

CSS清除浮动大全共8种方法

清除浮动是每一个 web前台设计师必须掌握的机能.css清除浮动大全,共8种方法. 浮动会使当前标签产生向上浮的效果,同时会影响到前后标签.父级标签的位置及 width height 属性.而且同样的代码,在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了.解决浮动引起的问题有多种方法,但有些方法在浏览器兼容性方面还有问题. 下面总结8种清除浮动的方法(测试已通过 ie chrome firefox opera,后面三种方法只做了解就可以了): 1,父级div定义 height 代码如下

css清除浮动代码实例演示

css清除浮动代码实例演示:在页面中如果采用了浮动,那么清除浮动则是必须要进行的操作,否则可能引起一些意想不到的后果.本章节不会对浮动或者清除浮动的原理做介绍,只是分享一下清除浮动的几段代码,因为有些朋友可能需要的就是一个代码实例,关于浮动或者清除清除浮动的相关内容可以参阅相关阅读.一.使用overflow清除浮动: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <met

css清除浮动float的三种方法总结,为什么清浮动?浮动会有那些影响?一起来$(&#39;.float&#39;)

一.抛一块问题砖(display: block)先看现象: 分析HTML代码结构: <div class="outer">     <div class="div1">1</div>     <div class="div2">2</div>     <div class="div3">3</div> </div> 分析CSS代码样

css清除浮动float的三种方法总结

转载地址:https://my.oschina.net/leipeng/blog/221125 css清除浮动float的三种方法总结,为什么清浮动?浮动会有那些影响?     一.抛一块问题砖(display: block)先看现象: 分析HTML代码结构: <div class="outer"> <div class="div1">1</div> <div class="div2">2</