标签: nsdata

对于Swift 3的"数据"类型,是否存在writeToFile等价物?

我有一些代码返回新的iOS 10/Swift 3 NSData替换(?)类型:数据

if let jpegData = UIImageJPEGRepresentation(newImage, 0.8) { ... }
Run Code Online (Sandbox Code Playgroud)

我想将此映像写入磁盘,但writeToFile:此类不存在NSData的方法.它确实有一个writeToURL:方法,但似乎不适用于文件路径(和附加组件).

任何人都可以澄清我现在将如何做到这一点,就像Swift 2中的情况一样:

jpegData.writeToFile(imagePath, atomically: true) 
Run Code Online (Sandbox Code Playgroud)

谢谢!

nsdata swift swift3 ios10 xcode8

39
推荐指数
1
解决办法
3万
查看次数

NSData和NSURL - 空间有问题的网址

我的应用程序中有以下代码.

NSData *data=[NSData dataWithContentsOfURL:[NSURL URLWithString:pathOfThumbNail]];
Run Code Online (Sandbox Code Playgroud)

pathOfThumbNail具有以下路径


http://70.84.58.40/projects/igolf/TipThumb/GOLF 58B.jpg


当我在safari浏览器中打开上面的路径时 - 路径自动更改并且图像成功显示.

http://70.84.58.40/projects/igolf/TipThumb/GOLF%2058B.jpg


但在iPhone中,由于路径中的空间,图像未加载到nsdata中.

iphone xcode nsurl nsdata

38
推荐指数
3
解决办法
3万
查看次数

将NSData转换为base64

如何转换NSDatabase64.我有NSData并希望转换成base64我该怎么做?

iphone base64 nsdata

38
推荐指数
4
解决办法
6万
查看次数

NSData和iOS上的POST上传图像

我一直在梳理很多关于在iOS上通过POST上传图片的帖子.尽管有关此主题的大量信息,但我无法正确上传从我的iPhone模拟器照片库中获取的JPEG数据.数据一旦在服务器上,就只是一串巨大的十六进制数据.NSData不应该只是一个字节流吗?我不知道所有的十六进制是什么,或者为什么这个代码似乎适用于其他所有人.

这是有问题的代码:

-(void)uploadWithUserLocationString:(NSString*)userLocation{
NSString *urlString = @"http://some.url.com/post";

// set up the form keys and values (revise using 1 NSDictionary at some point - neater than 2 arrays)
NSArray *keys = [[NSArray alloc] initWithObjects:@"auth",@"text",@"location",nil];
NSArray *vals = [[NSArray alloc] initWithObjects:self.authToken,self.textBox.text,userLocation,nil];

// set up the request object
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];

//Add content-type to Header. Need to use a string boundary for data uploading.
NSString *boundary = [NSString stringWithString:@"0xKhTmLbOuNdArY"];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; …
Run Code Online (Sandbox Code Playgroud)

iphone post nsdata nsurlrequest ios

37
推荐指数
3
解决办法
6万
查看次数

第一次播放声音时AVAudioPlayer启动缓慢

我试图通过iPhone上的AVAudioPlayer播放(非常短 - 少于2秒)的音频文件来消除启动延迟.

一,代码:

NSString *audioFile = [NSString stringWithFormat:@"%@/%@.caf", [[NSBundle mainBundle] resourcePath], @"audiofile"];
NSData *audioData = [NSData dataWithContentsOfMappedFile:audioFile];

NSError *err;
AVAudioPlayer *audioPlayer = [(AVAudioPlayer*)[AVAudioPlayer alloc] initWithData:audioData error:&err];

audioPlayer.delegate = self;
[audioPlayer play];
Run Code Online (Sandbox Code Playgroud)

一旦完成,我还实现了audioPlayerDidFinishPlaying方法来释放AVAudioPlayer.

我第一次播放音频时滞后是显而易见的 - 至少2秒.然而,之后立即播放声音.我怀疑那个罪魁祸首是[NSData dataWithContentsOfMappedFile]最初从闪存中读取了很长时间,但后来读取速度很快.不过,我不确定如何测试.

是这样的吗?如果是这样,我是否应该预先缓存NSData对象并积极地在低内存条件下清除它们?

iphone audio caching nsdata avaudioplayer

36
推荐指数
4
解决办法
2万
查看次数

将NSData Length从字节转换为megs

我正在尝试NSLog我的NSData对象的megs数量,但是目前我所能得到的只是字节数

NSLog(@"%u", myData.length);
Run Code Online (Sandbox Code Playgroud)

那么我将如何更改此NSLog语句以便我可以看到类似的内容

2.00兆

任何帮助,将不胜感激.

nslog nsdata ios

36
推荐指数
3
解决办法
5万
查看次数

将数据转换回字符串

所以我有这个:

  NSData *charlieSendData = [[charlieImputText stringValue] dataUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

我知道如何将NSStrings转换为数据,但我如何将数据转换回NSString?

以利亚

objective-c nsstring nsdata

34
推荐指数
2
解决办法
3万
查看次数

从NSData对象在Swift中创建一个数组

我试图在swift中将一个整数数组存储到磁盘.我可以将它们放入要存储的NSData对象中,但是将它们放回到数组中是很困难的.我可以获得原始COpaquePointer的数据data.bytes但无法找到一种方法来使用该指针初始化一个新的swift数组.有谁知道怎么做?

import Foundation

var arr : UInt32[] = [32,4,123,4,5,2];

let data = NSData(bytes: arr, length: arr.count * sizeof(UInt32))

println(data)  //data looks good in the inspector

// now get it back into an array?
Run Code Online (Sandbox Code Playgroud)

arrays nsdata ios swift

34
推荐指数
2
解决办法
4万
查看次数

将unsigned char数组转换为NSData并返回

如何在目标c中将unsigned char数组转换为NSData?

这是我想要做的,但它不起作用.Buffer是我的unsigned char数组.

NSData *data = [NSData dataWithBytes:message length:length];
Run Code Online (Sandbox Code Playgroud)

arrays iphone objective-c nsdata

31
推荐指数
1
解决办法
4万
查看次数

我可以创建一个引用内存NSData的NSURL吗?

国家的文件NSURL说:

NSURL对象表示可能包含远程服务器上资源位置的URL,磁盘上本地文件的路径,甚至是任意一段编码数据.

我有一大堆内存数据,我想把它交给一个想要通过一个资源加载资源的库NSURL.当然,我可以先将它写入NSData临时文件,然后创建一个file:// NSURL,但我更喜欢让URL直接指向我已经存在于内存中的缓冲区.

上面引用的文档似乎表明这是可能的,但我找不到任何如何实现它的暗示.我错过了什么吗?

cocoa nsurl nsdata ios

29
推荐指数
2
解决办法
6317
查看次数