要加密,则需要将字符串转为ASCII的字节数组。反之,则要转回来。代码为什么速度快?那就是,能不用FOR循环的,直接不用。使用PHP原有的函数,让它实现,这是最快的。
<?php
function stringToByteArray($str,$charset) {
$str = iconv($charset,'UTF-16',$str);
preg_match_all('/(.)/s',$str,$bytes); //注:本文的盗版已经有了。不过,提示一下读者,这里的正则改了。
$bytes=array_map('ord',$bytes[1]) ;
return $bytes;
}
function byteArrayToString($bytes,$charset) {
$bytes=array_map('chr',$bytes);
$str=implode('',$bytes);
$str = iconv('UTF-16',$charset,$str);
return $str;
}
$byteArray=stringToByteArray('13亿人口大国,自认为精通PHP的还是相当多的!','utf-8');
print_r($byteArray);
$retStr=byteArrayToString($byteArray,'utf-8');
echo $retStr;
?>
每个函数只有4行代码,没有FOR循环,但当文本相当长时,你就能发现,差别真的很大。
注:希望各位读者注意:本人博文如未注明是转发,全系本人原创。网上盗用版本甚多。但由于博文在发布时,有可能是多次编辑增加内容,或因有瑕疵而需要修改。所以,请来这里查看原创正版。
分享到:
相关推荐
根据给定的信息,本文将详细解释16进制与字符串、字节数组之间的转换方法,并结合提供的C#代码示例进行深入分析。 ### 一、16进制与整数之间的转换 #### 1.1 二进制转十六进制 在计算机科学中,经常需要将不同进制...
介绍php字符串与byte字节数组转化类,转换一个String字符串为byte数组,将字节数组转化为String类型的数据,转换一个int为byte数组,从字节数组中指定的位置读取一个Integer类型的数据,转换一个shor字符串为byte...
demo:gb2312 字符编码->字节数组->16进制字符串 // 字符编码->字节数组->16进制字符串 B2E2 CAD4 function gB2312tohex(message) {// let a = utf8ToGb2312Bytes(message) let hexString = a.map(num => num....
在实际应用中,字节数组和字符串的转换通常与文件操作结合。例如,读取二进制文件到字节数组,然后转换成字符串;或者将字符串转换成字节数组,写入二进制文件。 示例: ```vb ' 读取二进制文件到字节数组 Open ...
如果字节数组是通过ASCII字符串转换得到的,那么转换回的字符串将与原始ASCII字符串相同,除非字节数组包含非打印的ASCII码。 4. **十六进制表示**:在LabVIEW中,有时需要将字节数组表示为十六进制字符串,这对于...
在Windows Forms(Winform)开发中,经常需要处理字符串与字节数组之间的转换,这是因为字符串在内存中是Unicode格式,而字节数组则可以用于数据传输、存储或者序列化。本文将深入探讨如何在C# Winform环境中进行...
根据给定文件的信息,我们可以总结出以下关于C#中十六进制与字符串、字节数组之间转换的相关知识点: ### C#中十六进制与字符串、字节数组之间的转换 #### 一、概述 在计算机编程中,经常需要进行不同数据格式...
/** * 16进制表示的字符串转换为字节数组 * @param hexString 16进制表示的字符串 * @return byte[] 字节数组 */ public static byte[] hexStringToByteArray(String hexString) { hexString = hexString.replaceAll...
本文将深入探讨UTF8、ANSI、UTF7、UNICODE和UTF32这五种字符编码格式,并介绍如何在它们之间进行转换以及字节数组与字符串之间的互换。 1. UTF8(Unicode Transformation Format - 8 bit): UTF8是最常见的...
实例如下: # bytes object b = bexample # str object s = example ...以上这篇python字符串str和字节数组相互转化方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多
与单一的字符串不同,数组允许我们同时处理多个字符串。 2. **创建字符串数组**: - **手工创建**:在LabVIEW的前面板上,可以通过选择“控件”>“数组”>“字符串数组”来添加一个字符串数组控件。然后,你可以...
C#字节数组转16进制字符串 C#字节数组转16进制字符串 QQ:292258449
在Java或类似的编程语言中,我们经常会遇到需要将字符串(String)与字节数组(Byte[])以及十六进制表示的字符串(Hex)进行相互转换的情况。这些转换在处理网络通信、文件存储、加密解密等领域尤为关键。下面我们...
通过循环遍历字符串数组,每次迭代时取出一个字符串,然后与已有的连接字符串进行拼接。这种方法更灵活,可以自定义连接字符串之间的分隔符,但编写起来相对复杂一些。 在实际应用中,你可能还会遇到需要处理特定...
除了基础的“字符串到数组”函数,LabVIEW还提供了其他字符串处理函数,如“查找子字符串”、“替换子字符串”等,可以帮助我们更灵活地处理字符串。学习这些函数的组合使用,能提高在LabVIEW中处理字符串的效率和...
在C#编程语言中,判断一个字符是否存在于字符串或数组中是常见的操作,这在处理文本数据时尤其重要。下面我们将详细探讨如何实现这个功能,以及相关的重要知识点。 首先,我们要知道C#提供了多种方法来检查字符是否...
C# 中的类型转换之字符串和字符数组之间的转换 C# 中的类型转换是一个非常重要的概念,它使得我们可以在不同的数据类型之间进行转换,以满足不同场景下的需求。在字符串和字符数组之间的转换是我们经常遇到的问题,...
在描述中提到的博文链接虽然无法直接访问,但根据标题,我们可以推测博主可能分享了一种将十六进制字符串转换为字节数组的方法。通常,这种转换过程包括以下步骤: 1. **预处理**:检查输入的十六进制字符串是否...
### 遍历字符串与返回数组的基本概念 #### 1. 字符串简介 字符串是一种基本的数据类型,在大多数编程语言中都存在。它由一系列字符组成,通常用于存储和处理文本信息。例如,“Hello, world!”就是一个字符串。在...
此外,理解和掌握字符串与多维数组的特性还有助于深入学习其他数据结构,如链表、栈、队列等,因为这些高级数据结构在实现上或多或少都与数组和字符串有着紧密联系。例如,栈和队列可以看作是带有额外规则限制的数组...