怎么获得一个uiimage 获得尺寸对象的大小的,例如多少kb,多少byte

iOS数据类型转换 NSData转NSString,Byte,UIImage - 开源中国社区
当前访客身份:游客 [
当前位置:
发布于 日 10时,
iOS数据类型转换&NSData转NSString,Byte,UIImage
代码片段(1)
1.&[代码]iOS数据类型转换 NSData转NSString,Byte,UIImage&&&&
1,NSData 与 NSString
  NSData --& NSString
  NSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding];
  NSString --& NSData
  NSString *aString = @"1234";
  NSData *aData = [aString dataUsingEncoding: NSUTF8StringEncoding];
iOS NSString 和NSData 转换
NSString 转换成NSData 对象
NSData* xmlData = [@"testdata" dataUsingEncoding:NSUTF8StringEncoding];
NSData 转换成NSString对象
NSString *result = [[NSString alloc] initWithData:data
encoding:NSUTF8StringEncoding];
2,NSData 与 Byte
  NSData --& Byte
  NSString *testString = @"";
  NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];
  Byte *testByte = (Byte *)[testData bytes];
  Byte --& NSData
  Byte byte[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
  NSData *adata = [[NSData alloc] initWithBytes:byte length:24];
3,NSData 与 UIImage
  NSData --& UIImage
  UIImage *aimage = [UIImage imageWithData: imageData];
  //例:从本地文件沙盒中取图片并转换为NSData
  NSString *path = [[NSBundle mainBundle] bundlePath];
  NSString *name = [NSString stringWithFormat:@"ceshi.png"];
  NSString *finalPath = [path stringByAppendingPathComponent:name];
  NSData *imageData = [NSData dataWithContentsOfFile: finalPath];
  UIImage *aimage = [UIImage imageWithData: imageData];
  UIImage-& NSData
  NSData *imageData = UIImagePNGRepresentation(aimae);
4,NSData 与 NSMutableData
  NSData --& MSMutableData
  NSData *data=[[NSData alloc]init];
  NSMutableData *mdata=[[NSMutableData alloc]init];
  mdata=[NSData dataWithData:data];
5,NSData合并为一个NSMutableData
- (NSString *)filePathWithName:(NSString *)filename
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return [documentsDirectory stringByAppendingPathComponent:filename];
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//音频文件路径
NSString *mp3Path1 = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"mp3"];
NSString *mp3Path2 = [[NSBundle mainBundle] pathForResource:@"2" ofType:@"mp3"];
//音频数据
NSData *sound1Data = [[NSData alloc] initWithContentsOfFile: mp3Path1];
NSData *sound2Data = [[NSData alloc] initWithContentsOfFile: mp3Path2];
//合并音频
NSMutableData *sounds = [NSMutableData alloc];
[sounds appendData:sound1Data];
[sounds appendData:sound2Data];
//保存音频
NSLog(@"data length:%d", [sounds length]);
[sounds writeToFile:[self filePathWithName:@"tmp.mp3"] atomically:YES];
[window makeKeyAndVisible];
return YES;
开源中国-程序员在线工具:
相关的代码(504)
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
[Objective-C]
开源从代码分享开始
HJ王木木的其它代码GB、MB、KB分别是什么意思,大小分别是多少?
GB、MB、KB分别是什么意思,大小分别是多少?
09-01-18 &
表示存储器存储容量大小的常用单位是KB、MB和GB。 1GB=1024MB 1MB=1024KB 1KB=1024B/字节 象我们一般使用的汉字是占2个字节,也就是2B,英字母和符号是1个字节,
请登录后再发表评论!
1GB=1024MB 1MB=1024KB 1kb=1024字节 如果我没记错的话,电脑书上是这么写的
请登录后再发表评论!
1GB=1024MB 1MB=1024KB 1kb=1024字节 如果我没记错的话,电脑书上是这么写的
请登录后再发表评论!
1GB=1024MB 1MB=1024KB 1kb=1024字节
请登录后再发表评论!
都是磁盘大小的单位 1G=1024M 1M=1024K 1K=1024字节
请登录后再发表评论!
1GB=1024MB 1MB=1024KB 1kb=1024字节
请登录后再发表评论!
1GB=1024MB 1MB=1024KB 1kb=1024字节
请登录后再发表评论!
1. MB=mega bytes (兆) 2 MB=Bachelor of Medicine 医学学士,医生.因为doctor英语和博士的意思一样,所以医生们为了区别,在说了自己是doctor后会在补充说明自己是MB 计算机存储信息的单位: byte(拜特) KB MB GB TB 计算机存储信息最小的单位是bit(比特) 下面是它们之间的换算关系: 1Byte=8bit 1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB 以上就是它们之间的换算了. 就像生活中我们用Kg 公斤来衡量物体的重量一样, 计算机也有相应的衡量信息的单位. KB只是其中的一个. B(Byte,字节)是计算机中最基本的计量单位,还有b(bit,位,注意这个b和大写B的差别),b(位)是计算机中最小的单位,1B=8b.一个英文字母或数字在电脑中占用一个字节的空间,一个汉字占用两个字节(称为字),即1字=2字节.回答者:anan五五 - 经理 五级 3-29 13:24评价已经被关闭 目前有 0 个人评价
  好50% (0) 不好50% (0) 对最佳答案的评论好!!!评论者: ancaixiu3157 - 魔法学徒 一级 hao评论者: 397live_you - 魔法学徒 一级 其他回答共 9 条1mb=1024kb 1kb=1024b 回答者:hanhezhai - 总监 九级 3-29 13:22MB就是兆 KB就是K GB 就是吉~B就是BIT (比特)字节 1GB=1024MB 1MB=1024KB 1KB=1024B 回答者:黛悲9252053 - 经理 五级 3-29 13:23单位呀~1MB等于1024KB,1KB等于1024B,1B等于二个字符~ 回答者:鲈小渔 - 见习魔法师 二级 3-29 13:241B=8b 回答者:dydxdz - 秀才 三级 3-29 13:241GB=1024MB 1MB=1024KB 1KB=1024B 1G=1000M 1M=1000K 1K=1000B 回答者:魔剑士但丁 - 魔法师 四级 3-29 13:241EB=1024GB 1GB=1024MB 1MB=1024KB 1KB=1024B B 就是bit 一个英文字母是1B 一个汉字是2B 回答者:滇西老牛 - 举人 四级 3-29 13:26二进制:比特与字节 所有使用Internet的人总会在某个时候碰见“字节”(Byte)或者“比特”(Bit)术语,当你进行网络下载的时候它们会经常出现,同时你获取的速度指示也都以比特/每秒或者字节/每秒来显示。我们现在就来弄清楚比特(Bit)、字节(Byte)和千字节(Kbyte)究竟是什么意思,这样你就能理解它们了。要多简单就有多简单,一个比特就是一个二进制数的最小单元,就像我们说我们能够拥有的最小金额的钱就是一分一样,只不过比特是在二进制数中罢了。 一个比特只能拥有一个值,不是0就是1,所以如果我给你一个值0,你可以说它就是一个比特,如果我给你两个(00),你就可以说它们是两个比特了。 现在,如果你将八个0或者1组合在一起,例如(在中间加一个空格是为了看起来清晰明了),你就可以说它们是八个比特或者说一个字节。好,这就对了,八比特就等于一字节,而不管它们都是全是0、全是1或者是由若干0和若干1混合而成。 将这些字节加起来,到了1024个字节的时候,就获得了一个千字(Kbyte)了,为什么是1024而不是1000呢?这是由二进制的进位方式造成的,如果你学过数学,你就会知道上述结果是正确的。
请登录后再发表评论!NSData 与 NSString,Byte数组,UIImage 的相互转换
1. NSData 与 NSString
NSData-& NSString
NSString *aString = [[NSString alloc] initWithData:adataencoding:NSUTF8StringEncoding];
NSString-&NSData
NSString *aString = @&1234abcd&;
NSData *aData = [aString dataUsingEncoding: NSUTF8StringEncoding];
2.NSData 与 Byte
NSData-& Byte数组
NSString *testString = @&&;
NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];
Byte *testByte = (Byte *)[testData bytes];
for(int i=0;i&[testData length];i++)
printf(&testByte = %d\n&,testByte[i]);
Byte数组-& NSData
Byte byte[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
NSData *adata = [[NSData alloc] initWithBytes:byte length:24];
NSData *imageData = [NSData dataWithBytes:sqlite3_column_blob(stmt, 4) length:sqlite3_column_bytes(stmt, 4)];
Byte数组-&16进制数
Byte *bytes = (Byte *)[aData bytes];
NSString *hexStr=@&&;
for(int i=0;i&[encryData length];i++)
NSString *newHexStr = [NSString stringWithFormat:@&%x&,bytes[i]&0xff];///16进制数
if([newHexStr length]==1)
hexStr = [NSString stringWithFormat:@&%@0%@&,hexStr,newHexStr];
hexStr = [NSString stringWithFormat:@&%@%@&,hexStr,newHexStr];
NSLog(@&bytes 的16进制数为:%@&,hexStr);
16进制数-&Byte数组
///// 将16进制数据转化成Byte 数组
NSString *hexString = @&3e435fab9c34891f&; //16进制字符串
Byte bytes[128];& ///3ds key的Byte 数组, 128位
for(int i=0;i&[hexString length];i++)
int int_& /// 两位16进制数转化后的10进制数
unichar hex_char1 = [hexString characterAtIndex:i]; ////两位16进制数中的第一位(高位*16)
int int_ch1;
if(hex_char1 &= '0' && hex_char1 &='9')
int_ch1 = (hex_char1-48)*16;&& //// 0 的Ascll - 48
else if(hex_char1 &= 'A' && hex_char1 &='F')
int_ch1 = (hex_char1-55)*16; //// A 的Ascll - 65
int_ch1 = (hex_char1-87)*16; //// a 的Ascll - 97
unichar hex_char2 = [hexString characterAtIndex:i]; ///两位16进制数中的第二位(低位)
int int_ch2;
if(hex_char2 &= '0' && hex_char2 &='9')
int_ch2 = (hex_char2-48); //// 0 的Ascll - 48
else if(hex_char1 &= 'A' && hex_char1 &='F')
int_ch2 = hex_char2-55; //// A 的Ascll - 65
int_ch2 = hex_char2-87; //// a 的Ascll - 97
int_ch = int_ch1+int_ch2;
NSLog(@&int_ch=%d&,int_ch);
bytes[j] = int_& ///将转化后的数放入Byte数组里
NSData *newData = [[NSData alloc] initWithBytes:bytes length:128];
NSLog(@&newData=%@&,newData);
3. NSData 与 UIImage
NSData-&UIImage
UIImage *aimage = [UIImage imageWithData: imageData];
//例:从本地文件沙盒中取图片并转换为NSData
NSString *path = [[NSBundle mainBundle] bundlePath];
NSString *name = [NSString stringWithFormat:@&ceshi.png&];
NSString *finalPath = [path stringByAppendingPathComponent:name];
NSData *imageData = [NSData dataWithContentsOfFile: finalPath];
UIImage *aimage = [UIImage imageWithData: imageData];
UIImage-& NSData
NSData *imageData = UIImagePNGRepresentation(aimae);
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'B、Bit、Byte、KB、MB(M)、GB(G)、分别指的是什么?都是一些单位,容易混淆
bit (binary digit) 位
位是计算机数据中最小单元。位的值只会是0或1。虽然计算机也提供对位的判断和操作,但是计算机指令一般以字节为单位。在大多数的计算机系统中,八位是一个字节。一位的值通常以存储电容是否带电来衡量。
半个字节在英语中叫nibble。在一些系统中,octet代表8位,而不用字节;而在另一些系统中,octets组成32位字,在这些系统中,指令长度以全字(32位)或半字(16位)表示。
byte 关键字代表一种整型,该类型按下表所示存储值:
类型 范围 大小 .NET Framework 类型
byte 0 到 255 无符号 8 位整数 System.Byte
可如下例所示声明并初始化 byte 变量:
byte myByte = 255;
在以上声明中,整数 255 从 int 类型隐式转换为 byte 类型。如果整数超出了 byte
类型的范围,则将发生编译错误。
存在从 byte 类型到
short、ushort、int、uint、long、ulong、float、double 或 decimal
类型的预定义隐式转换。
不能将存储大小更大的非文字数字类型隐式转换为 byte
类型(请参见整型表中有关整型存储大小的信息)。例如,请看以下两个 byte 变量 x 和 y:
byte x = 10, y = 20;
以下赋值语句将产生一个编译错误,原因是赋值运算符右侧的算术表达式默认情况下计算为 int。
byte z = x + // Error: conversion from int to
若要解决此问题,请使用强制转换:
byte z = (byte)(x + y); // OK: explicit
conversion
但是,在目标变量具有相同或更大的存储大小时,使用下列语句是可能的:
int x = 10, y = 20;
int m = x +
long n = x +
同样,不存在浮点型到 byte
类型的隐式转换。例如,除非使用显式强制转换,否则以下语句将生成一个编译器错误:
byte x = 3.0; // Error: no implicit conversion from
byte y = (byte)3.0; // OK: explicit conversion
调用重载方法时,必须使用显式转换。例如,请看以下使用 byte 和 int
类型参数的重载方法:
public static void MyMethod(int i) {}
public static void MyMethod(byte b) {}
使用 byte 显式转换可保证调用正确的类型,例如:
MyMethod(5); // Calling the method with the int
MyMethod((byte)5); // Calling the method with the
byte parameter
b=bit 表示“位”
B=Byte 表示“字节”
1 Byte=8 bit
byte)可以存放八个二进制数字或一个字符(一个汉字占两个字节),1024个字节称为一个千字节,记为1KB;1024个千字节称为一个兆字节,记为1MB;1024个兆字节称为一个吉字节,记为1GB。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。1,NSData&与 NSString
  NSData --& NSString
  NSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding];
  NSString --& NSData
  NSString *aString = @&1234&;
  NSData *aData = [aString dataUsingEncoding: NSUTF8StringEncoding];
2,NSData 与 Byte
  NSData --& Byte
  NSString *testString = @&&;
  NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];
  Byte *testByte = (Byte *)[testData bytes];
  Byte --& NSData
  Byte byte[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
  NSData *adata = [[NSData alloc] initWithBytes:byte length:24];
3,NSData 与 UIImage
  NSData --& UIImage
  UIImage *aimage = [UIImage imageWithData: imageData];
  //例:从本地文件沙盒中取图片并转换为NSData
  NSString *path = [[NSBundle mainBundle] bundlePath];
  NSString *name = [NSString stringWithFormat:@&ceshi.png&];
  NSString *finalPath = [path stringByAppendingPathComponent:name];
  NSData *imageData = [NSData dataWithContentsOfFile: finalPath];
  UIImage *aimage = [UIImage imageWithData: imageData];
  UIImage-& NSData
  NSData *imageData = UIImagePNGRepresentation(aimae);
4,NSData 与 NSMutableData
  NSData --& MSMutableData
  NSData *data=[[NSData alloc]init];
  NSMutableData *mdata=[[NSMutableData alloc]init];&&&
  mdata=[NSData dataWithData:data];
5,NSData合并为一个NSMutableData
- (NSString *)filePathWithName:(NSString *)filename
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return [documentsDirectory stringByAppendingPathComponent:filename];
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//音频文件路径
NSString *mp3Path1 = [[NSBundle mainBundle] pathForResource:@&1& ofType:@&mp3&];
NSString *mp3Path2 = [[NSBundle mainBundle] pathForResource:@&2& ofType:@&mp3&];
//音频数据
NSData *sound1Data = [[NSData alloc] initWithContentsOfFile: mp3Path1];
NSData *sound2Data = [[NSData alloc] initWithContentsOfFile: mp3Path2];
//合并音频
NSMutableData *sounds = [NSMutableData alloc];
[sounds appendData:sound1Data];
[sounds appendData:sound2Data];
//保存音频
NSLog(@&data length:%d&, [sounds length]);
[sounds writeToFile:[self filePathWithName:@&tmp.mp3&] atomically:YES];
[window makeKeyAndVisible];
return YES;
&6,NSString 合并
NSString* // 结果字符串
NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起来
string = [NSString initWithFormat:@&%@,%@&, string1, string2 ];
string = [string1 stringByAppendingString:string2];
string = [string stringByAppendingFormat:@&%@,%@&,string1, string2];
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1876次
排名:千里之外

我要回帖

更多关于 byte kb 的文章

 

随机推荐