我可以使用UIImage或NSData方法从NSData创建UIImage .
我想知道我是否可以从现有的UIImage中获取NSData?什么就行了[UIImage imageWithData:]
我有一个NSURL对象,它给我一个本地文件的路径(在文档文件夹中).我想NSData用这个文件的内容填充一个对象.尝试使用,dataWithContentsOfURL:但这失败了.我知道该文件存在,因为iPhone SDK返回路径.
有人可以告诉我如何NSData从URL本地文件中获取对象吗?
谢谢.
我目前正在iOS上使用Imgur将图像上传到服务器,代码如下:
NSData* imageData = UIImagePNGRepresentation(image);
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* fullPathToFile = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"SBTempImage.png"];
[imageData writeToFile:fullPathToFile atomically:NO];
[uploadRequest setFile:fullPathToFile forKey:@"image"];
Run Code Online (Sandbox Code Playgroud)
代码在模拟器中运行并从模拟器的照片库上传文件时工作正常,因为我在快速以太网连接上.但是,在选择使用iPhone拍摄的图像时,相同的代码会在iPhone上超时.所以,我尝试通过从网络上保存一个小图像并试图上传它,这是有效的.
这让我相信iPhone拍摄的大图像会在有点慢的3G网络上超时.有没有办法在发送之前压缩/调整iPhone的图像大小?
谢谢!
我正在从第三方提供的URL加载图像.URL上没有文件扩展名(或文件名)(因为它是一个模糊的URL).我可以从中获取数据(以NSData的形式)并将其加载到UIImage中并显示它.
我想将此数据保存到文件中.但是,我不知道数据的格式是什么(PNG,JPG,BMP)?我认为它是JPG(因为它是来自网络的图像)但是有一种程序化的方法可以找到它吗?我查看了StackOverflow和文档,但未能找到任何内容.
TIA.
编辑:我真的需要文件扩展名吗?我将它持久化到外部存储(Amazon S3),但考虑到它总是在iOS或浏览器的上下文中使用(两者在没有扩展的情况下解释数据似乎都很好)也许这不是问题.
我在Swift中找不到解决这个问题的方法(所有这些都是Objective-C,它们处理的指针在Swift中以相同的形式存在).有没有办法将NSData对象转换为[Uint8]Swift 形式的字节数组?
我正在尝试从中加载UIImage对象NSData,示例代码是NSImage,我猜它们应该是相同的.但是刚刚加载图像,我想知道什么是最好的解决UIImage加载NSData问题.
我不确定我是否正在使用字典或数据对象或两者都不正确.我试图习惯切换到快速但我有点麻烦.
var dictionaryExample : [String:AnyObject] =
["user":"UserName",
"pass":"password",
"token":"0123456789",
"image":0] // image should be either NSData or empty
let dataExample : NSData = dictionaryExample as NSData
Run Code Online (Sandbox Code Playgroud)
我需要NSDictionary编码到一个NSData对象以及获取该NSData对象并将其解码为NSDictionary.
非常感谢任何帮助,谢谢.
我正在构建一个iPhone应用程序,并坚持以下:
unsigned char hashedChars[32];
CC_SHA256([inputString UTF8String], [inputString lengthOfBytesUsingEncoding:NSASCIIStringEncoding], hashedChars);
NSData *hashedData = [NSData dataWithBytes:hashedChars length:32];
NSLog(@"hashedData = %@", hashedData);
Run Code Online (Sandbox Code Playgroud)
日志显示如下:
hashedData = <abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh>
Run Code Online (Sandbox Code Playgroud)
但我需要的是将hashedData转换为NSString,如下所示:
NSString *someString = @"abcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefgh";
Run Code Online (Sandbox Code Playgroud)
所以基本上结果需要像hashedData,除了我不想在它们之间使用尖括号和空格.
我正在尝试将十六进制转换NSString为NSData(我正在使用下面附加的代码).以下是输出:
<00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000>
Run Code Online (Sandbox Code Playgroud)
这看起来与我完全无关.关于哪里出错的任何想法/建议?
NSString *strData = @"72ff63cea198b3edba8f7e0c23acc345050187a0cde5a9872cbab091ab73e553";
NSLog(@"string Data length is %d",[strData length]);
NSMutableData *commandToSend= [[NSMutableData alloc] init];
unsigned char whole_byte;
char byte_chars[2];
int i;
for (i=0; i < [strData length]/2; i++) {
byte_chars[0] = [strData characterAtIndex:i*2];
byte_chars[1] = [strData characterAtIndex:i*2+1];
whole_byte = strtol(byte_chars, NULL, [strData length]);
[commandToSend appendBytes:&whole_byte length:1];
}
NSLog(@"%@", commandToSend);
Run Code Online (Sandbox Code Playgroud) nsdata ×10
ios ×6
iphone ×5
uiimage ×4
nsstring ×3
cocoa-touch ×2
objective-c ×2
swift ×2
file-upload ×1
ios4 ×1
nsdictionary ×1
nsurl ×1
persist ×1