Linux下用base64命令加解密字符串


前言

在日常开发中,经常会对一些重要数据进行Base64加密或者解密。对于字符串进行Base64加密一般是在程序里实现,不过在Linux系统上可以直接通过base64指令进行对字符串的加密或者解密。


一、Linux将字符串进行base64加密

将某个字符串转为Base64时,可以使用一下指令:
命令: echo 字符串 | base64
例如需要将字符串abc加密成base64编码,那么在linux上输入命令: echo ‘abc’ | base64即可。
在这里插入图片描述
不过请注意使用echo 字符串 |base64 命令会在生成的base64编码后自动加上换行符,如果想在加密成base64时不加上换行符,那么可以使用以下命令:
命令: echo -n 字符串 | base64
在这里插入图片描述

二、Linux将文件进行base64编码并打印

如果要对一个文件内容进行base64编码,那么可以使用一下命令:
命令: base64 文件名
例如对a.txt文件进行base64编码,那么命令为:
base64 a.txt
在这里插入图片描述

三、Linux解码

如果要对某base64字符串进行解码,那么可以使用一下命令:
命令:echo 字符串 |base64 -d
例如拿上面abc的base64编码进行解码,通过上面知道abc的base64编码为YWJj,那么尝试解码输入命令
echo YWJj | base64 -d
在这里插入图片描述

  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
KYLib 2.1.3.1 (build 2010.06.10) 从 KYLib 2.1.1.0 版本开始, 在类中添加详细的注释, 可以很轻松的使用类及相关属性方法等等。 KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2003, VS2005等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {Unicode/UTF8编码, CRC32编码, Base64编码, MD5编码, 加密/解密编码等等} g. 线程相关类 {TThread, TKYThread, TKYAsynchRun, TKYRunThread, TKYTimer等等} h. 文件类 {TFile, TKYDebugFile, TKYLogObj等等} i. ini文件类 {TIniFile, TMemIniFile等等} j. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name等等} k. 链表类 {TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} l. 句柄类 {TKYHandles, TKYMemHandles等等} m. 二叉树类 {TKYAVLTree, TKYAVLTreeEx, TKYLevelTree} n. 共享队列类 {TKYQueueMap, TKYQueueFile} o. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} p. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} q. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} r. 接收缓冲区类 {TKYRecvBuffer, TKYRecvCache} s. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYTCPClient, TKYTCPServer, TKYUDPClient, TKYUDPServer等等} t. 压缩/解压缩类 {TKYPackObj, TKYUnpackObj} u. 字符串模式匹配类 {TKYMatch} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供.h, .o和.a文件, 供大家参考学习和使用。
================================================================================= = 标题: KYLib 简介 = 版本: 3.0.9.3 (build 2013.11.02) ================================================================================= 从 KYLib 2.1.1.0 版本开始, 在类中添加详细的注释, 可以很轻松的使用类及相关属性方 法等等。 KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2008等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移 植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {Randomize, Random, Unicode/UTF8编码, CRC32编码, Base64编码, MD5编码, 加密/解密编码等等} g. 线程相关类 {TThread, TKYThread, TKYRunThread, TKYAsynchRun, TKYTimer等等} h. 文件类 {TFile, TKYMapFile, TKYDebugFile, TKYLogObj等等} i. 文件表类 {TKYTable, TKYIndexFile, TKYIndexTree} j. ini文件类 {TIniFile, TMemIniFile等等} k. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name 等等} l. 链表类 {TKYCycQueue, TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} m. 句柄类 {TKYHandles, TKYMemHandles等等} n. 二叉树类 {TKYAVLTree, TKYAVLTreeEx, TKYLevelTree, AVL树相关函数} o. 共享队列类 {TKYQueueMap, TKYQueueFile, TKYQueueFileEx} p. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} q. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} r. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} s. 接收缓冲区类 {KYCycBuffer, TKYRecvBuffer, TKYRecvCache} t. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYTCPClient, TKYTCPServer, TKYUDPClient, TKYUDPServer等等} u. 压缩/解压缩类 {TKYPack, TKYUnpack, TKYQuickPack, TKYQuckUnpack, KYFixedPack, KYFixedUnpack} v. 字符串模式匹配类 {TKYMatch} w. map 相关的类模板 {TKYMapIntKey, TKYMapStrKey, TKYMapObjKey, TKYMapIntKeyEx, TKYMapStrKeyEx, TKYMapObjKeyEx} x. 智能对象集类模板 {TKYSmartObjs, TKYAllotObjs} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供头文件, 库文件和目标文件, 供大家参考学习和使用。
KYLib 2.0.4.0 (build 2009.02.18) KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2003, VS2005等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {CRC32 编码, Base64 编码, MD5 编码, 加密/解密编码} g. 线程类 {TThread, TKYThread, TKYRunThread等等} h. 文件类 {TFile, TKYDebugFile, TKYLogObj等等} i. ini文件类 {TIniFile, TMemIniFile等等} j. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name等等} k. 链表类 {TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} l. 句柄类 {TKYHandle, TKYMemHandle等等} m. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} n. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} o. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} p. 接收缓冲区类 {TKYRecvBuffer, TKYRecvCache} q. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYUDPClient, TKYTCPClient等等} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供.h, .obj和.lib文件, 供大家参考学习和使用。
0、此例程调试环境 运行uname -a的结果如下: Linux freescale 3.0.35-2666-gbdde708-g6f31253 #1 SMP PREEMPT Thu Nov 30 15:45:33 CST 2017 armv7l GNU/Linux 简称2017 armv7l GNU/Linux 1、openssl 直接处理AES的API 在openssl/aes.h定义。是基本的AES库函数接口,可以直接调用,但是那个接口是没有填充的。而如果要与Java通信,必须要有填充模式。所以看第2条。 2、利用openssl EVP接口 在openssl/evp.h中定义。在这个接口中提供的AES是默认是pkcs5padding方式填充方案。 3、注意openssl新老版本的区别 看如下这段 One of the primary differences between master (OpenSSL 1.1.0) and the 1.0.2 version is that many types have been made opaque, i.e. applications are no longer allowed to look inside the internals of the structures. The biggest impact on applications is that: 1)You cannot instantiate these structures directly on the stack. So instead of: EVP_CIPHER_CTX ctx; you must instead do: EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new(); .... EVP_CIPHER_CTX_free(ctx); 2)You must only use the provided accessor functions to access the internals of the structure. 4、注意加密的内容是数据不限制是否为字符串 openssl接口加密的是数据,不限制是否为字符串,我看到有些人在加密时使用strlen(),来获取要加密的长度,如果是对字符串加密的话没有问题,如果不是字符串的话,用它获取的长度是到第一个0处,因为这个函数获取的是字符串长度,字符串是以零为终止的。 5、在调用EVP_EncryptFinal_ex时不要画蛇添足 正常加解密处理过程,引用网友的代码如下,经测试正确。 int kk_encrypt(unsigned char *plaintext, int plaintext_len, unsigned char *key, unsigned char *iv, unsigned char *ciphertext) { EVP_CIPHER_CTX *ctx; int len; int ciphertext_len; ctx = EVP_CIPHER_CTX_new(); EVP_EncryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv); //EVP_EncryptInit_ex(ctx, EVP_aes_128_ecb(), NULL, key, iv); EVP_EncryptUpdate(ctx, ciphertext, &len;, plaintext, plaintext_len); ciphertext_len = len; EVP_EncryptFinal_ex(ctx, ciphertext + len, &len;); ciphertext_len += len; EVP_CIPHER_CTX_free(ctx); return ciphertext_len; } int kk_decrypt(unsigned char *ciphertext, int ciphertext_len, unsigned char *key, unsigned char *iv, unsigned char *plaintext) { EVP_CIPHER_CTX *ctx; int len; int plaintext_len; ctx = EVP_CIPHER_CTX_new(); EVP_DecryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv); //EVP_DecryptInit_ex(ctx, EVP_aes_128_ecb(), NULL, key, iv); EVP_DecryptUpdate(ctx, plaintext, &len;, ciphertext, ciphertext_len); plaintext_len = len; EVP_DecryptFinal_ex(ctx, plaintext + len, &len;); plaintext_len += len; EVP_CIPHER_CTX_free(ctx); return plaintext_len; } 我看到有人提供的代码在加密长度正好是16字节的整数倍时特意不去调用EVP_EncryptFinal_ex,这实在是画蛇添足啊,不论什么情况下,最后一定要调用EVP_EncryptFinal_ex一次,然后结束加密过程。 6、Base64陷阱 如果用到了base64,要注意如下: 1)base64算法是将3个字节变成4个可显示字符。所以在如果数据长度不是3字节对齐时,会补0凑齐。 2)在解密时先要解base64,再解AES。在解base64后,要减掉补上的0。算法就去查看base64后的字符串尾处有几个=号,最多是2个,如果正好要加密的数据是3的倍数,不需要补0,那么base64后的数据尾处就没有=,如果补了1个0,就有一个=号。 算法如下: int encode_str_size = EVP_EncodeBlock(base64, en, el); int length = EVP_DecodeBlock(base64_out, base64, encode_str_size ); //EVP_DecodeBlock内部同样调用EVP_DecodeInit + EVP_DecodeUpdate + Evp_DecodeFinal实现,但是并未处理尾部的'='字符,因此结果字符串长度总是为3的倍数 while(base64[--encode_str_size] == '=') length--; 算法网友提供,测试正确。
KYLib 2.0.9.0 (build 2009.10.21) KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2003, VS2005等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {CRC32 编码, Base64 编码, MD5 编码, 加密/解密编码} g. 线程类 {TThread, TKYThread, TKYRunThread等等} h. 文件类 {TFile, TKYDebugFile, TKYLogObj等等} i. ini文件类 {TIniFile, TMemIniFile等等} j. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name等等} k. 链表类 {TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} l. 句柄类 {TKYHandles, TKYMemHandles等等} m. 二叉树类 {TKYAVLTree, TKYLevelTree} n. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} o. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} p. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} q. 接收缓冲区类 {TKYRecvBuffer, TKYRecvCache} o. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYUDPClient, TKYTCPClient等等} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供.h, .o和.a文件, 供大家参考学习和使用。
KYLib 2.0.8.4 (build 2009.09.28) KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2003, VS2005等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {CRC32 编码, Base64 编码, MD5 编码, 加密/解密编码} g. 线程类 {TThread, TKYThread, TKYRunThread等等} h. 文件类 {TFile, TKYDebugFile, TKYLogObj等等} i. ini文件类 {TIniFile, TMemIniFile等等} j. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name等等} k. 链表类 {TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} l. 句柄类 {TKYHandles, TKYMemHandles等等} m. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} n. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} o. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} p. 接收缓冲区类 {TKYRecvBuffer, TKYRecvCache} q. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYUDPClient, TKYTCPClient等等} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供.h, .o和.a文件, 供大家参考学习和使用。
KYLib 2.1.1.0 (build 2010.01.30) KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2003, VS2005, VS2008等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移植, 以及可以平稳移植到Linux中。 从 KYLib 2.1.1.0 版本开始, 在类中添加详细的注释, 可以很轻松的使用类及相关属性方法等等。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {Unicode/UTF8编码, CRC32编码, Base64编码, MD5编码, 加密/解密编码} g. 线程相关类 {TThread, TKYThread, TKYAsynchRun, TKYRunThread, TKYTimer等等} h. 文件类 {TFile, TKYDebugFile, TKYLogObj等等} i. ini文件类 {TIniFile, TMemIniFile等等} j. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name等等} k. 链表类 {TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} l. 句柄类 {TKYHandles, TKYMemHandles等等} m. 二叉树类 {TKYAVLTree, TKYAVLTreeEx, TKYLevelTree} n. 共享队列类 {TKYQueueMap, TKYQueueFile} o. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} p. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} q. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} r. 接收缓冲区类 {TKYRecvBuffer, TKYRecvCache} s. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYTCPClient, TKYTCPServer, TKYUDPClient, TKYUDPServer等等} t. 压缩/解压缩类 {TKYPackObj, TKYUnpackObj} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供.h, .o和.a文件, 供大家参考学习和使用。
= 标题: KYLib 简介 = 版本: 3.1.0.0 (build 2014.10.21) 从 KYLib 2.1.1.0 版本开始, 在类中添加详细的注释, 可以很轻松的使用类及相关属性方 法等等。 KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2008等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移 植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {Randomize, Random, Unicode/UTF8编码, CRC32编码, Base64编码, MD5编码, 加密/解密编码等等} g. 线程相关类 {TThread, TKYThread, TKYRunThread, TKYAsynchRun, TKYTimer等等} h. 文件类 {TFile, TKYMapFile, TKYDebugFile, TKYLogObj等等} i. 文件表类 {TKYTable, TKYIndexFile, TKYIndexTree} j. ini文件类 {TIniFile, TMemIniFile等等} k. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name 等等} l. 链表类 {TKYCycQueue, TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} m. 句柄类 {TKYHandles, TKYMemHandles等等} n. 二叉树类 {TKYAVLTree, TKYAVLTreeEx, TKYLevelTree, AVL树相关函数} o. 共享队列类 {TKYQueueMap, TKYQueueFile, TKYQueueFileEx} p. 内存管理类 {TKYCache, TKYFormatBlock, TKYMemBlock等等} q. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} r. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} s. 接收缓冲区类 {KYCycBuffer, TKYRecvBuffer, TKYRecvCache} t. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYTCPClient, TKYTCPServer, TKYUDPClient, TKYUDPServer等等} u. 压缩/解压缩类 {TKYPack, TKYUnpack, TKYQuickPack, TKYQuckUnpack, KYFixedPack, KYFixedUnpack} v. 字符串模式匹配类 {TKYMatch} w. map 相关的类模板 {TKYMapIntKey, TKYMapStrKey, TKYMapObjKey, TKYMapIntKeyEx, TKYMapStrKeyEx, TKYMapObjKeyEx} x. 智能对象集类模板 {TKYSmartObjs, TKYAllotObjs} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供头文件, 库文件和目标文件, 供大家参考学习和使用。
================================================================================= = 标题: KYLib 简介 = 版本: 3.0.9.3 (build 2013.11.02) ================================================================================= 从 KYLib 2.1.1.0 版本开始, 在类中添加详细的注释, 可以很轻松的使用类及相关属性方 法等等。 KYLib 使用简单, 只要头文件中包含有: #include "KYLib.h" 就可以了。 KYLib 有针对VC6, VS2008等版本库, 而且基于KYLib开发的代码可以在VC不同版本中平稳移 植, 甚至可以平稳移植到Linux中。 KYLib 提供的相关函数与Delphi中基本相同, 提供丰富的函数和类, 如: a. 字符串类KYString与Delphi中的String结构基本相似, 而且多线程安全稳定 b. TDateTime类型与Delphi中的TDateTime类型完全相同, 而且支持相关的函数 c. 字符串操作相关函数 {Copy, Trim, UpperCase, SetLength, Format, SameText, CompareStr等等} d. 日期时间相关函数 {Date, Time, Now, FormatDateTime等等} e. 文件操作相关函数 {FileOpen, FileCreate, FileClose, FileExists, CreateDir, DeleteFile, ExtractFilePath等等} f. 编码相关函数 {Randomize, Random, Unicode/UTF8编码, CRC32编码, Base64编码, MD5编码, 加密/解密编码等等} g. 线程相关类 {TThread, TKYThread, TKYRunThread, TKYAsynchRun, TKYTimer等等} h. 文件类 {TFile, TKYMapFile, TKYDebugFile, TKYLogObj等等} i. 文件表类 {TKYTable, TKYIndexFile, TKYIndexTree} j. ini文件类 {TIniFile, TMemIniFile等等} k. 列表类 {TKYList, TKYStringList, TKYCustomList, TKYNameStrList, TKYCode2Name 等等} l. 链表类 {TKYCycQueue, TKYQueue, TKYStack, TKYQueueEx, TKYStackEx等等} m. 句柄类 {TKYHandles, TKYMemHandles等等} n. 二叉树类 {TKYAVLTree, TKYAVLTreeEx, TKYLevelTree, AVL树相关函数} o. 共享队列类 {TKYQueueMap, TKYQueueFile, TKYQueueFileEx} p. 内存管理类 {TKYFormatBlock, TKYMemBlock等等} q. 线程同步类 {TKYCritSect, TKYLockRW, TKYEvent, TKYMutex, TKYSemaphore} r. 可变类型类 {TKYVarType, TKYField, TKYFieldDef等等} s. 接收缓冲区类 {KYCycBuffer, TKYRecvBuffer, TKYRecvCache} t. Socket相关类 {TKYBaseSocket, TKYSockRecvThread, TKYTCPClient, TKYTCPServer, TKYUDPClient, TKYUDPServer等等} u. 压缩/解压缩类 {TKYPack, TKYUnpack, TKYQuickPack, TKYQuckUnpack, KYFixedPack, KYFixedUnpack} v. 字符串模式匹配类 {TKYMatch} w. map 相关的类模板 {TKYMapIntKey, TKYMapStrKey, TKYMapObjKey, TKYMapIntKeyEx, TKYMapStrKeyEx, TKYMapObjKeyEx} x. 智能对象集类模板 {TKYSmartObjs, TKYAllotObjs} KYLib 是专业级类库, 具有高性能和高稳定的体系结构, 不是一般共享库能比拟。 KYLib 只提供头文件, 库文件和目标文件, 供大家参考学习和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值