Java字符串跟ASCII码互转

1.由于项目中遇到,在服务器端起的jar包程序,给前台发消息后,前段收到的消息出现乱码情况,所以采取在后才发消息前先把消息字符串转成ASCII码再发往前台,前台采取在收到后台消息先把ASCII码转成字符串的解决方案进行解决。

1)将字符串转成ASCII的Java方法

public static String stringToAscii(String value)
{
    StringBuffer sbu = new StringBuffer();
    char[] chars = value.toCharArray();
    for (int i = 0; i < chars.length; i++) {
        if(i != chars.length - 1)
        {
            sbu.append((int)chars[i]).append(",");
        }
        else {
            sbu.append((int)chars[i]);
        }
    }
    return sbu.toString();
}  

2)将ASCII转成字符串的java方法

public static String asciiToString(String value)
{
    StringBuffer sbu = new StringBuffer();
    String[] chars = value.split(",");
    for (int i = 0; i < chars.length; i++) {
        sbu.append((char) Integer.parseInt(chars[i]));
    }
    return sbu.toString();
}  

main方法测试:

public static void main(String[] args) {

              String str = "{name:1234,password:4444}";
              String asciiResult = stringToAscii(str);
              System.out.println(asciiResult);
              String stringResult = asciiToString(asciiResult);
              System.out.println(stringResult);
             }
    

输出:

123,110,97,109,101,58,49,50,51,52,44,112,97,115,115,119,111,114,100,58,52,52,52,52,125
{name:1234,password:4444}
时间: 2024-08-02 10:03:19

Java字符串跟ASCII码互转的相关文章

[PHP]chr和ord函数实现字符串和ASCII码互转

chr和ord函数是用来字符串和ASCII码互转的.  ASCII码是计算机所能显示字符的编码,它的取值范围是0-255,其中包括标点.字母.数字.汉字等.在编程过程中,经常把指定的字符转化为ASCII码进行比较. 下面是PHP提供的转换ASCII码和字符的函数. 1.chr()函数 该函数用于将ASCII码值转化为字符串.其函数声明如下: string chr (int ascii); 2.ord()函数 该函数用于将字符串转化为ASCII码值.其函数声明如下: int ord(string 

java 字符与ASCII码互转

字符转对应ASCII码 // 方法一:将char强制转换为byte char ch = 'A'; byte byteAscii = (byte) ch; System.out.println(byteAscii); // 方法二:将char直接转化为int,其值就是字符的ascii int byteAscii1 = (int) ch; System.out.println(byteAscii1); ASCII码转字符 // 直接int强制转换为char int ascii = 65; char

C# 参数签名字符串按 ASCII码排序,注意其中的坑

参数签名中通常是按键值对中键名称的ASCII按从小到大的顺序排序后进行hash为签名字符串.不要直接使用 SortedDictionary<string, string> 有坑的,他是按数字.小写字母.大写字母的顺序排的,实际规则应该是数字.大写字母.小写字母的顺序来排才对.一直使用他在支付宝和微信的接口中都没问题,因为支付宝和微信的单词是用下划线分隔的,今天接入的一家支付公司用的驼峰命名法坑就出现了.正确的打开姿势如下: /// <summary> /// ASCII值排序 //

BCD与ASCII码互转-C语言实现

最近由于项目需要,需要将BCD编码转换为对应的字符串,下面为C语言实现,经测试好用! 转载请标明出处! /*BCD 与 ASCII码转换*/ /******************************************************************* 函数名: asc2bcd 功能描述:将ascii码转换为bcd码 参数: bcd:转换后的BCD码 asc:需转换的ASCII码串 len:需转换的ascii码串长度 返回值: uint32 0:成功 其他:失败 ***

字符串与ascII码相互转化

//字符串转ASCII public static String stringToAscii(String value) { StringBuffer sbu = new StringBuffer(); char[] chars = value.toCharArray(); for (int i = 0; i < chars.length; i++) { if(i != chars.length - 1) { sbu.append((int)chars[i]).append(","

使用Java OutputStream打印ASCII码

import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; /** * 向文件中打印ASCII表 * @author zzw922cn * */ public class PrintASCII { public static void main(String[] args) throws IOException { // TODO Auto-generated method s

iOS 对字符串进行ASCII码排序

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Menlo; color: #ffffff; background-color: #000000 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Menlo; color: #00b1ff; background-color: #000000 } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; fo

Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换

public class DigitalTrans { /** * 数字字符串转ASCII码字符串 * * @param String * 字符串 * @return ASCII字符串 */ public static String StringToAsciiString(String content) { String result = ""; int max = content.length(); for (int i = 0; i < max; i++) { char c

PHP ASCII码与字符串的相互转换

<?php class ascii { /** * 将ascii码转为字符串 * @param type $str 要解码的字符串 * @param type $prefix 前缀,默认:&# * @return type */ function decode($str, $prefix="&#") { $str = str_replace($prefix, "", $str); $a = explode(";", $str