0 0

谁能帮我找一个可以对byte数组做替换的算法?5

就像String的replace操作一样,可以替换不固定长度的内容,好难写啊 我自己写不来。。。
2014年9月16日 09:44

2个答案 按时间排序 按投票排序

0 0

import java.util.Arrays;

public class Test {

	public static void main(String[] args) {
		String s = "asdasdasd";
		System.out.println(s.replace('a', '1'));
		byte b[] = {'a','v','r'};
		System.out.println(Arrays.toString(new Test().replace(b, 'a', '1')));
	}
	
	 public byte[] replace(byte[] b, char oldChar, char newChar) {
		for (int i = 0; i < b.length; i++) {
			if(b[i]==oldChar){
				b[i] = (byte)newChar;
			}
		}
		return b;
	 }
	
}

2014年9月16日 13:53
0 0

你是做题还是实际用呢,做题那就自己慢慢想吧。实际用你都知道String可以replace了,那把byte数组转成String处理不就好了。

2014年9月16日 11:01

相关推荐

    128位AES算法代码-word文件

    在该代码中,S盒是一个二维数组,共有16x16=256个元素,每个元素是一个十六进制数。 2. 逆S盒(Inverse Substitution Box) 逆S盒是 AES 算法中的一种非线性变换,它将输入的 byte 转换为输出的 byte。逆S盒是一个...

    AES算法C++源码

    在提供的代码片段中,可以看到一个名为`AES`的类,该类实现了AES加密的核心功能,并支持不同长度的密钥。接下来将详细解析这些代码。 #### 三、核心类定义 ```cpp class AES { public: typedef enum ENUM_KeySize_...

    blowfish算法的C#实现

    总的来说,`BlowfishClass`是一个用于C#中的Blowfish算法实现的类,它提供了加密和解密的功能,是保护敏感数据和实现安全通信的重要工具。理解并正确实现这种算法可以帮助你提升在信息安全领域的专业技能。

    des实验报告,含代码

    1. 拆分原 dev 代码,将其做成一个项目,分层如下:main 函数、des 函数、byte to bit 和 bit to byte 的实现、初始置换 ip、编排密钥算法等。 2. 编写各个模块的代码,例如 main 函数、des 函数、byte to bit 和 ...

    AES加密算法的实现及应用

    其中,字节替换是对状态矩阵中的每一个字节进行非线性替换;行移位是对状态矩阵的行进行循环移位;列混合是对状态矩阵的每一列进行线性变换;轮密钥加法则是在每一轮变换开始时将轮密钥与状态矩阵进行异或运算。在...

    精简的modbus crc16算法 vb6

    这个函数接收字节数组`Data`,通过异或和移位操作计算CRC值,并返回一个长整型数(VB6的Long类型可以存储两个字节)。注意,实际的生成多项式应替换为Modbus协议中规定的`Poly`值。 **4. 应用在485 Modbus通讯...

    c++置换加密替换加密des加密源码

    替换加密将每个字符转换为另一个字符,通常是基于某种特定的替换规则,如使用字母表的某种变形或更复杂的替换规则。在C++中,可以使用函数映射或者查找表来实现替换操作。例如,A替换为B,B替换为C,以此类推,形成...

    DES算法Java实现

    DES算法需要一个56位的密钥,但在Java中,我们通常使用8字节的字节数组来表示。我们需要将这个字节数组转换为DESKeySpec对象,然后通过SecretKeyFactory创建一个SecretKey实例。 ```java byte[] keyBytes = "我的...

    AES加密算法C代码.doc

    2. **字节代换(Byte Substitution, S-Box)**:S-Box是一个非线性的转换,将每个8位的字节替换为另一个8位字节。在这个实现中,`S`是一个8x4x16的三维数组,代表了8个S盒,每个S盒有4行16列,用于执行字节代换。 3...

    JAVA 加密 解密 算法

    消息摘要算法可以生成一个固定长度的散列值(或称为哈希值),该值是原始数据的一个数字指纹。即使输入数据发生很小的变化,产生的散列值也会大不相同。常用的摘要算法有MD5、SHA-1和SHA-256等。 ### 2. Blowfish...

    C#实现DES加密算法

    这里我们创建两个静态方法,一个用于加密,一个用于解密: ```csharp public static byte[] DES_Encrypt(string plainText, byte[] key, byte[] iv) { DESCryptoServiceProvider des = new ...

    AES算法java代码

    AES(Advanced Encryption Standard)是一种广泛使用的对称加密算法,它基于替换和置换的组合,具有高效、安全的特点。在Java中实现AES加密可以分为几个关键步骤,这些步骤将在以下内容中详细阐述。 首先,理解AES...

    数学形态学之贴标签算法VC++实现

    1. **初始化**:首先,创建一个二维数组`g`用于存储图像数据,并初始化标签计数器`Lab`和已标记目标数量`N`。 2. **扫描图像**: - 遍历每个像素,检查相邻像素是否属于同一目标。 - 使用局部变量`bb`来记录当前...

    DES和RSA加密算法不写程序代码的加密方案

    **DES算法**是一种对称加密算法,它使用一个固定的密钥对64位的数据块进行加密。加密过程涉及一系列复杂的位操作和替换,最终得到64位的密文。由于其密钥较短(通常是56位),在安全性方面存在一定的局限性,但因其...

    golang面试题集合.zip

    字符串转成byte数组,会发生内存拷贝吗? http包的内存泄漏 sync.Map 的用法 Golang 理论 Go语言的GPM调度器是什么? Goroutine调度策略 goroutine调度器概述 Redis基础 Redis 基础数据结构 Redis中的底层数据结构 ...

    Golang 面试题汇编

    字符串转成byte数组,会发生内存拷贝吗? http包的内存泄漏 sync.Map 的用法 Golang 理论 Go语言的GPM调度器是什么? Goroutine调度策略 goroutine调度器概述 Redis基础 Redis 基础数据结构 Redis中的底层数据结构 ...

    C#实现十六进制AES的加解密,字节数组工具类

    1. 初始化AES算法:使用`Aes.Create()`方法创建一个默认的AES实例,或者通过指定密钥和初始向量进行自定义配置。 2. 设置密钥和初始向量:AES要求固定的128位(16字节)密钥和128位(16字节)的初始向量。可以使用`...

    DES加密算法 C#.NET2008实现

    首先,你需要创建一个DESCryptoServiceProvider对象实例,然后设置密钥和初始化向量(IV)。密钥和IV都是需要保密的,因为它们用于加密和解密数据。初始化向量必须在加密和解密过程中保持一致,但每个加密操作可以...

    JAVA开发基于Misty1算法的加密软件(JAVA)的实现(源代码+论文).zip

    **Java实现Misty1算法加密软件详解** ...它在设计上注重了抗线性分析和差分攻击的能力,采用了迭代结构,具有...通过理解和掌握源代码,开发者不仅可以学习到Misty1算法的实现,还能进一步提升对Java编程和密码学的理解。

Global site tag (gtag.js) - Google Analytics