`
seawavenews
  • 浏览: 230216 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

encode() decode()实现对字符串的变换还原

阅读更多

 

(2007-03-27 16:50:55)   人生何处相逢
实现两个方法encode() decode()实现对字符串的变换还原。


1。若当前字符串非数字字符或为数字字符0,则复制改字符串于新字符串中
2。若已知字符串的当前字符串是一个数字字符,且它之后没有后继字符,则简单的将它复制倒新字符串中。
3。若已知字符串的当前字符是一个大于0的数字字符,并且还有后继字符,设该数字字符的面值为N,则将
   它的后继字符(包括后继字符是一个数字字符)重复复制N+1次到新字符串中。
4。以上述一次变换为一组,在不同组之间另插一个下划线‘—’用于分隔;
5。若已知字符串中包含有下划线‘—’,则变换为用‘\UL’.

   如Encode()原24ab_2t2的变换为444_aaaaa_a_b_\UL_ttt_t_2

public String retu()
{
String newStr;
int len = str.length();
for(int i =0;i<len;i++)
{
 String s = str.substring(i,i);
   if(!Character.isDigit(s)||s.equals("0"))
  {
       newStr = newStr + s;
  }else if(s.equals("_"))
  {
     newStr = newStr + "|UL";
  }
  else
  {
      if(i>=len)
      {
        newStr = newStr + s;
      }else
      {
        if(Integer.ParseInt(s) > 0)
        {
            if(Character..isDigit(str.substring(i+1,i+1)))
            for(int j=0;j<Integer.ParseInt;j++)
            {
               newStr = newStr + str.substring(i+1,i+1);
            }
            str = str.replace(s,"N");
        }
       
      }
  }
}
return newStr;


 (2007-03-27 17:07:04)     
public class Main {
 public static void main(String[] args) {
  String str = null;
  if (args.length == 0) {
   System.exit(0);
  } else {
   str = args[0];
  }
  StringBuffer buf = new StringBuffer();
  for (int i = 0; i < str.length(); i++) {
   char c = str.charAt(i);
   if ((c + "").equals("_")) {
    buf.append("\\UI");
   } else if (!Character.isDigit(c) || (c + "").equals("0")) {
    buf.append(c);
   } else if (i != str.length() - 1) {
    String s = c + "";
    int n = Integer.parseInt(s);
    for (int k = 0; k < n; k++) {
     buf.append(str.charAt(i + 1));
    }
    buf.append("_");
   }
   else
    buf.append(c);
  }
  System.out.println(buf);
 }
}

分享到:
评论

相关推荐

    Json_decode 解析json字符串为NULL的解决方法(必看)

    但是有时候我们会发现,即使是看似完整的JSON字符串,在使用`json_decode()`函数解析后返回的却是NULL,这会让人困惑。这篇文章将会详细探讨在使用PHP的`json_decode()`函数解析JSON字符串遇到NULL返回值时的解决...

    Python字符串的encode与decode研究.pdf

    Python 字符串的 encode 与 decode 研究 Python 中的字符串编码问题是非常常见的,很多开发者在处理字符串时会遇到乱码问题。这个问题的根源是 Python 字符串的内部表示是 Unicode 编码,而在编码转换时需要以 ...

    RSA_encodedecode.zip

    本项目提供的"RSA_encodedecode.zip"是一个C语言实现的RSA加密解密工具,包含测试代码和Makefile,方便用户直接编译运行。 在RSA算法中,主要涉及到两个关键概念:公钥和私钥。公钥是公开的,任何人都可以获取,...

    EncodeDecode & ANSI-UTF8编码转换工具

    "EncodeDecode & ANSI-UTF8编码转换工具"的工作原理可能是读取输入文本文件,识别其当前的编码格式(如ANSI),然后将每个字符转换成对应的Unicode值,再根据目标编码(如UTF-8)重新编码这些字符。这个过程可能涉及...

    字符串转EnCode_c#

    字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c# 字符串转EnCode_c#

    PB 进制转换 url编码 urlencode urldecode 数组排序

    hexencode 将字符串指定字符集进行编码成16进制字符串 hexstring 将字符串指定字符集进行编码成16进制字符串 power 求数字的幂函数 replace 将指定字符串中的源字符替换为目标字符 todec 将指定进制的数字转换成10...

    EnCode/DeCode转换工具

    EnCode/DeCode转换工具是一款专门针对这一需求设计的小巧实用软件,它能够处理ANSI和UTF-8这两种常见的字符编码格式,帮助开发者解决字符转换的问题。 首先,我们要理解编码与解码的基本概念。编码是将可读的文本...

    netty encode decode

    在这个"Netty encode decode"主题中,我们主要关注两个关键部分:AMF3(Action Message Format 3)编码和解码,以及字符串的编码和解码。 AMF3 是 Adobe 开发的一种二进制序列化格式,常用于 Flash 和 Flex 应用...

    C# JSON 编码解码

    //Program.cs 里是一些比较极端的测试,...//jsonCode 为格式化好的JSON字符串: { "x":1.23, "y":4.56 } //解码范例: Vec2 v2 = JSON.Decode(jsonCode); Console.WriteLine("v2.x=" + v2.x + ",v2.y=" + v2.y);

    PDF417 encode decode

    this program is a demo to encode, decode for PDF417 bar code.

    imx6 vpu encode decode display

    嵌入式vpu, 编码、解码等相关代码.

    Python3字符串encode与decode的讲解

    由于Python3默认采用Unicode作为其内部字符串编码方式,因此在处理不同编码格式(如UTF-8、GBK等)的数据时,我们需要通过`encode()`和`decode()`方法来实现字符串与字节码之间的转换。本文将详细介绍这两个方法的...

    delphi2010 base64_encode&decode

    标题"delphi2010 base64_encode&decode"指的是使用Delphi 2010编程环境实现的Base64编码和解码功能。Delphi是一款强大的面向对象的集成开发环境(IDE),主要用于编写Windows应用程序,其语法基于Pascal语言。 描述...

    TI 达芬奇平台的Encode Decode文档

    通过对该文档的阅读,编程人员能够了解到 TI 达芬奇平台的 Encode Decode 功能的工作原理,并能学习如何利用 TI 的 CodecEngine 和相应的编解码算法对视频和音频进行处理。这不仅对于开发数字视频处理应用是重要的,...

    字符串的encode/escape

    字符串`encode`主要是指将字符串从一种字符编码转换为另一种字符编码的过程。常见的编码有ASCII、UTF-8、GBK等。在Java中,我们可以使用`String`类的`getBytes()`方法配合指定的字符集进行编码转换,如`getBytes(...

    字符串按照指定的字节数来截取

    如果要考虑字节,我们需要使用`encode()`方法将字符串转化为字节串,因为Python的切片默认是基于字符的。例如: ```python s = "你好,世界" byte_s = s.encode('utf-8') # 将字符串转为UTF-8编码的字节串 ...

    CSharp-string-encode-decode.rar_C#逐字符加密_CSharp B85]::Decode_c#de

    标题“CSharp-string-encode-decode.rar_C#逐字符加密_CSharp B85]::Decode_c#de”暗示我们将关注一种特殊的字符加密方法,可能是基于B85编码的变体。 首先,让我们了解什么是字符加密。字符加密是一种将可读文本...

    字符串操作完全演示

    `encode()`方法将字符串编码为字节,`decode()`方法将字节解码回字符串。 **字符串比较** 字符串按照字典顺序进行比较,先比较第一个字符,如果相同再比较第二个,直到找到不同或比较完所有字符。 **字符串遍历** ...

    常用字符串处理函数-求子字符串,字符串分割,编码转换.

    ### 常用字符串处理函数:求子字符串、字符串分割与编码转换 在现代编程语言如JavaScript中,字符串处理是日常开发中极为常见的任务之一。本文将深入探讨几个常用的字符串处理函数,包括如何求取子字符串、进行字符...

    字符串转16进制字节

    反之,如果我们有一个16进制字节序列,想要将其还原为字符串,我们需要先将16进制字符串解析为字节,然后再解码成字符串。在Python中,这可以通过`unhexlify`和`decode`函数完成: ```python hex_str = "48656c6c6...

Global site tag (gtag.js) - Google Analytics