package com.commons.utils;
/**
* 字符串编码器类,将字符串转换为指定格式.
*
* 参数字典:
* src - source 来源的简写
* dst - destnation 目的的简写
* fnd - find 查找的简写
* rep - replace 替换的简写
* idx - index 索引,下标的简写
* enc - encoding 编码的简写
*
* 例子:
* <%=ArticleFormat.htmlTextEncoder(yourString)%>
*/
public class StringEncoder
{
/**
* 将字符串src中的子字符串fnd全部替换为新子字符串rep.
* 功能相当于java sdk 1.4的String.replaceAll方法.
* 不同之处在于查找时不是使用正则表达式而是普通字符串.
*/
public static String replaceAll(String src, String fnd, String rep) throws Exception
{
if (src == null || src.equals(""))
{
return "";
}
String dst = src;
int idx = dst.indexOf(fnd);
while (idx >= 0)
{
dst = dst.substring(0, idx) + rep + dst.substring(idx + fnd.length(), dst.length());
idx = dst.indexOf(fnd, idx + rep.length());
}
return dst;
}
/**
* 转换为HTML编码.
可以转换textarea回车问题,在td中的显示
*/
public static String htmlEncoder(String src) throws Exception
{
if (src == null || src.equals(""))
{
return "";
}
String dst = src;
dst = replaceAll(dst, "<", "<");
dst = replaceAll(dst, ">", "&rt;");
dst = replaceAll(dst, "\"", """);
dst = replaceAll(dst, "'", "'");
dst = replaceAll(dst, " ", " ");
dst = replaceAll(dst, "\r\n", "
");
dst = replaceAll(dst, "\r", "
");
dst = replaceAll(dst, "\n", "
");
return dst;
}
/**
* 转换为XML编码.
*/
public static String xmlEncoder(String src) throws Exception
{
if (src == null || src.equals(""))
{
return "";
}
String dst = src;
dst = replaceAll(dst, "&", "&");
dst = replaceAll(dst, "<", "<");
dst = replaceAll(dst, ">", ">");
dst = replaceAll(dst, "\"", """);
dst = replaceAll(dst, "\'", "´");
return dst;
}
}
分享到:
相关推荐
在前端开发中,给`textarea`元素添加行号功能是一个常见的需求,特别是在代码编辑器或者文本编辑器的实现中。`textarea-line-number`是一个JavaScript插件,专门用于为`textarea`提供显示行号的功能,提高了用户体验...
jQuery-easyui textarea回车导致 数据无法展示的问题
当用户在`textarea`中按下回车键时,浏览器会将其识别为换行符(`\r\n`),这在JavaScript读取`textarea`的值时也会体现出来。然而,在后续的数据处理过程中,例如在业务逻辑层将这些值转换成字符串形式并存储到...
在网页开发中,`textarea` 是一个常用的元素,用于接收用户输入多行文本。然而,原始的 `textarea` 没有内置的功能来显示行号,这对于需要进行代码编辑或者查看多行文本的场景来说不够友好。为了提高用户体验,...
根据给定的信息,本文将详细解析在Flex框架中如何处理`textarea`控件中的HTML文本显示与转换。Flex是一款强大的RIA(Rich Internet Application)开发工具,由Adobe公司维护,广泛应用于构建高性能、交互丰富的Web...
在网页设计中,`textarea`元素常用于收集用户的大段文字输入,如评论、留言等。然而,有时候我们需要对用户输入的字符数进行限制,防止过长的文本影响页面布局或数据库存储。本文将深入探讨如何实现对`textarea`文本...
在实际应用中,`textarea`的内容可以通过JavaScript动态设置,这使得可以实现动态加载或者根据用户行为改变`textarea`的内容。例如,通过`document.getElementById('example').value = '新文本';`可以改变`textarea`...
问题描述: 比如get数据到一个TextArea里面,如“AAA BBB”,想把这段文字在TextArea里面真正按行存放,而不是显示出来按行存放(所谓的真正按行存放就是,再把这个TextArea的数据post到另外一个页面的Textarea里面...
值得注意的是,虽然这段代码提供了在Java环境中处理TextArea换行问题的一个具体示例,但在实际开发中,换行处理还可能涉及更复杂的逻辑,例如自动换行、软换行与硬换行的区别、换行符的编码和解析等。在不同的应用...
总的来说,`react-textarea-autosize`是一个强大的工具,可以帮助开发者在React项目中创建智能、自适应的textarea组件,提供更加顺畅的用户体验。它易于使用,可定制性强,而且对性能的影响极小,是构建前端项目时...
Vue实现动态显示textarea剩余文字数量,具体内容如下 这里我们假设允许用户输入的最多数量为200个 html代码如下: <textarea maxlength="200" @input="descInput" v-model="desc" /> <span>{{remnant}}/200...
为了解决这个问题,我们可以使用jQuery来创建一个插件,该插件能够在用户输入或修改文本时,自动调整TextArea的高度,以适应当前文本量。这种技术被称为“高度自适应”。 ### 二、代码解析 #### 1. 初始化设置 在...
这样,我们不仅可以实现`textarea`滚动条样式的自定义,还能确保在各种浏览器中保持一致的显示效果。 最后,对于压缩包中的"滚动条样式"文件,这可能是包含上述CSS样式或JavaScript实现的代码文件,具体使用时需要...
编辑框中可以识别的字符,在普通的标签里面没办法识别到,所以要转换成可以识别的 方法1 string.replace(/(rn|n|r)/gm, ) 然后再用v-html=转换之后的string,就可以正常展示换行了 方法2 第二种方
在网页设计中,`textarea`元素是用于创建多行文本输入的字段,用户可以在其中输入大量文本,如评论、文章内容或表单数据。`textarea`通常与`form`元素一起使用,允许用户输入信息并将其提交给服务器进行处理。在本...
在这个例子中,`textarea` 将显示一个宽60个字符、高6行的文本框,用户可以在其中输入文本。 ### 可选属性 除了`cols`和`rows`之外,`<textarea>` 还有其他一些可选属性,用于控制控件的行为: - `name`: 必须...
这段代码会在用户在`textarea`中输入文字时,自动调整其高度为内容的实际高度,从而避免了固定高度导致的显示问题。 至于去除滚动条,可以使用CSS样式来实现。对于水平滚动条,我们可以通过设置`overflow-x: hidden...
通过上述方法,可以有效地解决Flex在非主应用程序环境中textarea和input控件无法正常输入中文的问题。首先通过设置 `<object>` 或 `<embed>` 标签的 `wmode` 属性来改善与浏览器的交互,然后通过调整Flex应用的背景...
### 在Textarea光标处插入文本 #### 知识点概览 本文将详细介绍如何使用JavaScript在`textarea`的光标位置插入文本。该方法适用于多种浏览器环境,包括Internet Explorer(IE)和其他基于Mozilla的浏览器(如Fire...
在本文中,我们将深入探讨“TextArea”和“TextField”这两个在ActionScript 3(AS3)中用于处理文本输入的组件,以及如何实现文本即时显示最后一行的功能。这个功能在日志查看、聊天应用或任何需要实时跟踪文本更新...