标签: nsstring

如何将NSMutableString转换为double以存储在Core Data中?

我的应用需要将从XML解析的纬度和经度值存储到Core Data中.目前,我有一个Core Data Model,它将这些属性设置为type double.模型对象的头文件定义为NSNumber

如何将存储在我的CurrentNodeText变量中的字符串转换为Core Data中存储所需的类型?另外,这是在Core Data中存储坐标数据的合适方法吗?

double cocoa core-data nsstring

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

使用NSDateFormatter的字符串中的日期,无论12h-24h设置如何

今天我的问题是关于日期格式和字符串.我的应用程序下载一些代表互联网日期的字符串.日期格式总是这样:"2010-05-24 at 20:45"我需要将此字符串转换为NSDate对象,以便执行某些日期操作.我试过这段代码:

NSString * dateString = @"2010-05-24 at 20:45" // actually downloaded from the internet
NSDateFormatter * myDateFormatter = [[NSDateFormatter alloc] init];
[myDateFormatter setDateFormat:@"yyyy-MM-dd 'at' HH:mm"];
NSDate * dateFromString = [myDateFormatter dateFromString:dateString];
Run Code Online (Sandbox Code Playgroud)

只要iPhone设置为24小时,这似乎完全正常.只要我在常规设置中切换到12h时钟,就不会创建NSDate对象(并且应用程序很快崩溃)我已经读过其他有类似问题的人,但我似乎找不到解决方案.现在问题:对我来说NSDateFormatter对用户设置是明智的是没有意义的,只要我指定它应该用于解析字符串的格式(由于它来自Web而不可修改),检查用户设置的用途是什么?更重要的是,如何执行任务(无论用户设置如何,都从字符串中获取NSDate对象)?

iphone format time nsstring nsdateformatter

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

NSMakeRange崩溃的应用程序

我正在尝试使用substringWithRange:NSMakeRange获取NSString的子字符串.我从保存的字典中获取初始字符串,保存的字符串写为agent_AGENTNAME,我试图剥离agent_部分.如果我硬编码NSMakeRange中的数字,下面的代码工作正常(如果它是粗糙的话,可以随意批评它) - 就像这样

NSString* savedAgentName =  [NSString stringWithFormat:@"%@", [thisfile substringWithRange:NSMakeRange(6,19)]];
Run Code Online (Sandbox Code Playgroud)

但由于每个人显然都有不同长度的名字,我需要让它更有活力.当我将代码切换到此时:

 NSString* savedAgentName =  [NSString stringWithFormat:@"%@", [thisfile substringWithRange:NSMakeRange(6,[thisfile length])]];
Run Code Online (Sandbox Code Playgroud)

它崩溃了我的应用程序.为什么?

这是更大的代码块:

//get saved agents
 savedAgents = [[NSMutableArray alloc] initWithObjects:@"Select An Agent", nil];
 for(int f=0; f<[rootcontents count]; f++) {
      NSString* thisfile = [NSString stringWithFormat:@"%@", [rootcontents objectAtIndex:f]];
      if ([thisfile rangeOfString:@"agent_"].location != NSNotFound) {

          int thisfilelength = [thisfile length];
          NSString* savedAgentName =  [NSString stringWithFormat:@"%@", [thisfile substringWithRange:NSMakeRange(6,thisfilelength)]];
          //NSLog(@"%@", savedAgentName);

         [savedAgents addObject:savedAgentName];
      } 
 }
Run Code Online (Sandbox Code Playgroud)

谢谢.

substring nsstring

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

如何将int值附加到字符串?

NSMutableString  *selectDay=@"Wed 14 May";
[selectDay stringByAppendingFormat:@"%i", yearNumber];
NSLog(@"%@",selectDay);
Run Code Online (Sandbox Code Playgroud)

我会尝试这个.但它不能将yearNumber附加到该字符串请帮助我.YearNumber包含2011.

iphone objective-c nsstring

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

为什么NSString sizeWithFont:返回错误的大小?

我需要将UITextView的高度从上到下计算到光标.我正在修剪它包含的文本(因此它只能到达光标),然后使用NSString的sizeWithFont:constrainedToSize:lineBreakMode:方法来计算高度,如下所示:

   NSRange range;
   range.location = noteTextView.selectedRange.location;
   range.length = noteTextView.text.length - range.location;

   NSString *string = [noteTextView.text stringByReplacingCharactersInRange:range withString:@""];

   CGSize size = [string sizeWithFont:noteTextView.font 
                     constrainedToSize:noteTextView.frame.size 
                         lineBreakMode:UILineBreakModeWordWrap];

   NSLog(@"height is: %f \n", size.height);
Run Code Online (Sandbox Code Playgroud)

每当我输入任何东西时都会这样做.

问题是,当我在键入时观察NSLog时,在我在新行上键入4个字符之前,它不会记录高度的变化.就好像该sizeWithFont方法恰好是四个字符.这里有两个屏幕截图显示我的意思: 在线有三个字符的高度 在线高度有四个字符

谁能告诉我发生了什么事?

iphone cocoa-touch nsstring uitextview

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

NSObject到NSString Objective-C

有人可以帮我将NSObject转换为NSString吗?

我正在尝试做这样的事情 -

NSString *address = [NSString stringWithFormat:ivpObj.addressStr];
Run Code Online (Sandbox Code Playgroud)

但我得到了一个警告 - 格式不是字符串文字,也没有格式参数

请一些帮助

objective-c nsstring nsobject

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

如何将unsigned int转换为NSString?

我有一个未定义的int值为-10,现在我想将其转换为NSString.

简单地说,我们在objective-c中进行iphone编程

int x = 10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Run Code Online (Sandbox Code Playgroud)

我将控制台输出显示为10

但如果是这样的话

unsigned int x = -10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Run Code Online (Sandbox Code Playgroud)

然后输出将是相同的,而不是-10,

我怎样才能进行适当的转换?

iphone nsstring unsigned-integer

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

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

方法"shouldChangeTextInRange"和"stringByReplacingCharactersInRange"如何工作?

我想知道以下代码的工作原理.

- (BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
    return !([newString length] > 10);
}
Run Code Online (Sandbox Code Playgroud)

"stringByReplacingCharactersInRange"有什么作用?以上方法如何限制可以在textField中输入的字符数?

提前致谢!

objective-c textfield nsstring ios

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

将十六进制字符串转换为十六进制数

我目前有一个NSString包含十六进制值.我需要将此NSString对象转换为NSData对象,而根本不更改其内容.

iphone objective-c nsstring nsdata ios

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