ios:NSString、NSData、char* 类型之间的转换

2024-04-08 08:32

本文主要是介绍ios:NSString、NSData、char* 类型之间的转换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. NSString转化为UNICODE String(NSString*)fname  @“Test”;char fnameStr[10];memcpy(fnameStr, [fname cStringUsingEncoding:NSUnicodeStringEncoding], 2*([fname length]));与strcpy相比,memcpy并不是遇到'\0'就结束,而是一定会拷贝完n个字节2. NSString 转化为 char *NSString * str @“Test”;const char * a =[str UTF8String];3.char * 转化为 NSStringNSString *str=[NSString stringWithCString  encoding:NSUTF8StringEncoding];4. char * 转化 NSData 方法一:  char * a = (char*)malloc(sizeof(byte)*16);  NSData *data = [NSData dataWithBytes: a   length:strlen(a)]; 方法二:   转换为NSString - (id)initWithUTF8String:(const char *)bytes然后用NSString - (NSData *)dataUsingEncoding:(NSStringEncoding)encoding5. NSData 转化 char * NSData data  char* a=[data bytes];6. NSData 转化 NSString;NSData* data;NSString* aStr= NSString alloc] initWithData:data   encoding:NSASCIIStringEncoding];7. NSString 转化 NSData对象NSData* xmlData = [@"testdata" dataUsingEncoding:NSUTF8StringEncoding];NSString 转化 NSURL  //NSURL *url = [NSURL URLWithString:[str   stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding ]]; NSString *urlString=[@"http://www.google.com/search?client=safari&rls=en&q=搜索&ie=UTF-8&oe=UTF-8" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];NSURL 转化 NSStringNSURL *url=[NSURL URLWithString:urlString];NSString *s=[[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];NSArray *arr = [urlStr componentsSeparatedByString:@"&"]; NSURL *url = [NSURL URLWithString:[[arr objectAtIndex:0] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding ]]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; [request setHTTPMethod:@"POST"]; NSMutableArray *_array = [[NSMutableArray alloc] initWithCapacity:0]; for (int i = 1; i < [arr count]; ++i ){ NSString *str = [arr objectAtIndex:i]; [_array addObject:str]; [_array componentsJoinedByString:@"&"]; NSData *data = [[_array componentsJoinedByString:@"&"] dataUsingEncoding: NSASCIIStringEncoding]; [request setHTTPBody:data];/ 发送请求并获得服务器反馈的数据   NSData *urldata = [AESEnCDeCViewController Get:url];      // 第一种 转换NSData数据到char*字符串   char * test = (char*)[urldata bytes];   std::string old = deaes(test);   // 第二种 转换NSData到UTF8编码的NSString中再转换为char*字符串//    NSString *desStr = [[NSString alloc] initWithData:urldata encoding:NSUTF8StringEncoding];//    const char *desresult = [desStr UTF8String];//    std::string old = deaes(desresult);    // 解密字字符串到明文NSString *oldstr = [[NSString alloc] initWithCString:old.c_str()];很多时候软件读取的中文网页编码集是gb2312,所以显示出来的是乱码。这时需要将NSString文字编码转换1 NSURL *url = [NSURL URLWithString:urlStr];2 NSData *data = [NSData dataWithContentsOfURL:url];    3 NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);    4 NSString *retStr = [[NSString alloc] initWithData:data encoding:enc];NSURL转化NSStringNSURL *url=····NSString *str=[url absoluteString];NSMutableArray转化NSArray:NSMutableArray *list=····NSArray *list=[list mutableCopy];
转载地址:http://blog.sina.com.cn/s/blog_a573f7990101ezpa.html

这篇关于ios:NSString、NSData、char* 类型之间的转换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/885071

相关文章

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

IDEA如何将String类型转json格式

《IDEA如何将String类型转json格式》在Java中,字符串字面量中的转义字符会被自动转换,但通过网络获取的字符串可能不会自动转换,为了解决IDEA无法识别JSON字符串的问题,可以在本地对字... 目录问题描述问题原因解决方案总结问题描述最近做项目需要使用Ai生成json,可生成String类型

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

JAVA中整型数组、字符串数组、整型数和字符串 的创建与转换的方法

《JAVA中整型数组、字符串数组、整型数和字符串的创建与转换的方法》本文介绍了Java中字符串、字符数组和整型数组的创建方法,以及它们之间的转换方法,还详细讲解了字符串中的一些常用方法,如index... 目录一、字符串、字符数组和整型数组的创建1、字符串的创建方法1.1 通过引用字符数组来创建字符串1.2

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

Python中异常类型ValueError使用方法与场景

《Python中异常类型ValueError使用方法与场景》:本文主要介绍Python中的ValueError异常类型,它在处理不合适的值时抛出,并提供如何有效使用ValueError的建议,文中... 目录前言什么是 ValueError?什么时候会用到 ValueError?场景 1: 转换数据类型场景

C# dynamic类型使用详解

《C#dynamic类型使用详解》C#中的dynamic类型允许在运行时确定对象的类型和成员,跳过编译时类型检查,适用于处理未知类型的对象或与动态语言互操作,dynamic支持动态成员解析、添加和删... 目录简介dynamic 的定义dynamic 的使用动态类型赋值访问成员动态方法调用dynamic 的

Java将时间戳转换为Date对象的方法小结

《Java将时间戳转换为Date对象的方法小结》在Java编程中,处理日期和时间是一个常见需求,特别是在处理网络通信或者数据库操作时,本文主要为大家整理了Java中将时间戳转换为Date对象的方法... 目录1. 理解时间戳2. Date 类的构造函数3. 转换示例4. 处理可能的异常5. 考虑时区问题6.

基于C#实现将图片转换为PDF文档

《基于C#实现将图片转换为PDF文档》将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片,所以本文将介绍如何使用C#将JPG/PNG图片转换为PDF文档,需要的可以参考下... 目录介绍C# 将单张图片转换为PDF文档C# 将多张图片转换到一个PDF文档介绍将图片(JPG、PNG)转