`
witcheryne
  • 浏览: 1100278 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Web开发中个人String工具类: 提供 toUTF8, toGBK, toHtml, formatDate

    博客分类:
  • J2SE
阅读更多

     没事翻了翻以前写的代码,感觉这个比较常用,贴出来一遍日后查询.

 

import java.io.*;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * String类型的工具类,用于进行web开发中的字符格式转换。
 * @author 吕健
 * @version 1.0  
 * @since 2008-11-26
 * notes: 
 * 1.提供toHtml()方法,用于将字符串中的特殊字符转换成html代码<br />
 * 2.提供toGBK()方法,用于将'ISO-8859-1'格式编码的字符转换成GBK格式<br />
 * 3.提供toUTF8()方法,用于将'ISO-8859-1'格式编码的字符转换成UTF-8格式
 */
public final class StringUtility {
    private StringUtility() {
    }
    
    /**
     * "ISO-8859-1"格式字符转换成"GBK"
     * @param str "ISO-8859-1"格式字符
     * @return "GBK"格式字符
     */
    public static String toUTF8(String str) {
    	try {
            str = new String(str.getBytes("ISO-8859-1"), "UTF-8");
        } catch (UnsupportedEncodingException ex) {
            ex.printStackTrace();
        }
        return str;
    }
    
    /**
     * 格式化显示日期
     * @param date java.util.Date
     * @param format 日期格式,如: yyyy年MM月dd日
     * @return String
     */
    public static String formatDate(Date date, String format) {
    	SimpleDateFormat dateFormat = new SimpleDateFormat();
    	
    	return dateFormat.format(date);
    }
    
    /**
     * "ISO-8859-1"格式字符转换成"GBK"
     * @param str "ISO-8859-1"格式字符
     * @return "UTF-8"格式字符
     */
    public static String toGBK(String str) {
        try {
            str = new String(str.getBytes("ISO-8859-1"), "gb2312");
        } catch (UnsupportedEncodingException ex) {
            ex.printStackTrace();
        }
        return str;
    }

    /**
     * 将普通文本转换成html文本,避免html显示错误现象
     * @param str String
     * @return String
     */
    public static String toHtml(String str) {
        if(str == null)
            return null;
        StringBuffer sb = new StringBuffer();
        //获取字符串的长度
        int len = str.length();

        //转换特殊字符串
        for(int i = 0; i < len; i++) {
            char c = str.charAt(i);
            switch(c) {
            case ' ':
                sb.append("&nbsp;");
                break;
            case '\n':
                sb.append("<br>");
                break;
            case '\r':
                break;
            case '\'':
                sb.append("&#39;");
                break;
            case '<':
                sb.append("&lt;");
                break;
            case '>':
                sb.append("&gt;");
                break;
            case '&':
                sb.append("&amp;");
                break;
            case '"':
                sb.append("&#34");
                break;
            case '\\':
                sb.append("&#92");
                break;
            default:
                sb.append(c);
            }//end switch
        }//end for

        return sb.toString();
    }

//    public static void main(String[] args) {
//        String test = "<thml>哈哈asdf \" \\ 噢噢 ";
//        System.out.println(test);
//        System.out.println(StringUtility.toHtml(test));
//    }
}
 
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    String和Date工具类

    本篇文章将详细讲解`String`和`Date`工具类中涉及的知识点,以及如何在实际开发中有效地运用它们。 首先,我们来看`String`工具类。在Java中,`String`对象是不可变的,这意味着一旦创建,就不能改变其内容。因此,...

    Android开发中常用的工具类整理

    在Android应用开发中,工具类(Utils类)是开发者经常使用的辅助组件,它们通常包含一些通用的方法,可以方便地在各个模块之间复用,提高代码的可读性和维护性。以下是一些Android开发中常见的工具类及其关键知识点...

    android开发各种工具类

    在Android开发过程中,工具类(Utils Class)是开发者经常使用的代码模块,它们包含了各种通用功能,可以帮助我们提高开发效率,减少重复工作。"android开发各种工具类"这个资源集合了作者在开发实践中积累的一些...

    android开发常用工具类集锦

    在Android开发过程中,工具类(Utility Classes)是提高效率、简化代码的重要组成部分。这些类通常包含了一系列静态方法,用于执行特定任务,如日期时间处理、网络请求、数据序列化等。下面将详细介绍一些常见的...

    Android常用的工具类

    在Android开发过程中,工具类(Utility Class)是程序员经常使用的一种设计模式,它们通常包含一组静态方法,用于执行特定的任务或者提供便捷的功能。这些工具类可以极大地提高代码的复用性和可维护性。以下是一些...

    常用的工具类文件

    在Java开发过程中,工具类(Utility Class)是程序员日常工作中不可或缺的一部分。这些类通常包含一组静态方法,提供各种实用功能,以简化代码并提高效率。本压缩包“常用工具类”很可能包含了多个针对不同场景的...

    Android-Java开发中用到的工具类收集

    在Android Java开发中,工具类(Utils类)是开发者经常使用的辅助代码集合,它们封装了各种通用功能,以便在项目中快速调用。这个名为"java-utils-master"的压缩包很可能是包含了一系列实用工具类的开源项目。下面,...

    JAVA 工具类 项目

    在Java编程中,工具类(Utility Class)是包含静态方法的类,这些方法通常执行某种通用操作或提供一些辅助功能。这些工具类可以极大地提高代码的可读性和可重用性,减少代码冗余,使得开发者能更专注于业务逻辑。在...

    Android快速开发工具类

    在Android应用开发中,工具类(Utils)是程序员经常使用的组件,它们包含了各种常用功能的静态方法,可以极大地提高开发效率。"Android快速开发工具类"集合了多种实用功能,如图片处理、缓存管理、网络状态检测、...

    最新Android 开发工具类(20个)

    在Android开发过程中,工具类(Utils)扮演着重要的角色,它们是可复用代码的集合,可以帮助开发者提高效率,减少重复工作。以下是一些在Android开发中常用的工具类及其相关知识点: 1. **字符串处理工具类**:这类...

    java操作 工具类1.0

    这些类在软件开发中起着至关重要的作用,因为它们提供了一种简洁的方式来处理常见的编程需求。在给定的"java操作 工具类1.0"中,我们看到几个关键的工具类,包括DateUtil、CalendarUtil、PinyinUtils以及...

    Android-Android快速开发工具类收集

    在Android应用开发中,工具类(Utility Class)是开发者经常使用的代码模块,它们包含了各种通用功能,方便在项目中重复使用。"Android-Android快速开发工具类收集" 是一个整理了多个常用工具类的资源,旨在提高开发...

    日期处理工具类

    在Java编程语言中,日期处理是一项常见的任务,用于管理和操作日期和时间。为了方便开发者,Java提供了多种工具类来处理日期。"日期处理工具类"通常是指一个...在实际开发中,我们常常会看到类似的工具类被广泛使用。

    Android敏捷开发常用工具类

    "Android敏捷开发常用工具类"就是一个集合了多种实用功能的库,它针对Android开发中的常见操作进行了封装,以减少重复工作,提升开发效率。 一、字符串处理工具类(StringUtil) 在Android开发中,字符串操作无处不在...

    java工具类(多年积累) 下载后导入就可以使用~

    Java工具类是Java开发中非常重要的组成部分,它们通常是一些静态方法集合,为开发者提供了便捷的功能,例如字符串处理、日期时间操作、集合操作等。在Java编程中,工具类可以帮助我们减少代码量,提高开发效率,使...

    fmtformatDate的输出格式

    `fmt:formatDate`是Java...总的来说,`fmt:formatDate`是JSP中处理日期和时间显示的强大工具,通过灵活的属性配置和模式字符,能够满足各种日期时间格式化需求,确保日期和时间的展示符合用户习惯和应用程序的要求。

    fmt:formatDate的输出格式详解

    总结来说,`fmt:formatDate`是JSP中处理日期和时间格式化的重要工具,通过灵活的属性和自定义模式,可以满足各种日期和时间的展示需求。理解并熟练运用这些知识点,能帮助开发者更好地构建用户友好的界面,提高用户...

    uni-app一些工具类

    工具类(Utils)在任何开发项目中都扮演着至关重要的角色,它们通常包含了各种通用的功能和方法,以提高代码的复用性和可维护性。在这个"uni-app一些工具类"的压缩包中,我们可以预见到包含了一些实用的辅助函数,...

    android常用的工具类

    在Android开发过程中,工具类(Utility Classes)是开发者不可或缺的辅助工具。它们通常包含一系列静态方法,用于执行特定任务,如处理字符串、日期、网络请求等。这些工具类提高了代码的可重用性和模块化,使得开发...

Global site tag (gtag.js) - Google Analytics