标签: nsstring

在UILabel中查找子字符串的坐标

我有一个来自服务器的字符串,我在UILabel上显示.它在该字符串中,我正在识别一些特定的子字符串.我想在子字符串上放置一个按钮(按钮将是UILabel的子视图).为此,我需要子串坐标.我经历了这个要点,但我无法理解它.

假设我的完整字符串是abc,567-324-6554,纽约.我想在按钮上显示567-324-6554,我需要它的坐标.如何使用上面的链接查找子串的坐标?

iphone nsstring uilabel

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

iOS:将NSString转换为NSData的不同方法

将NSString转换为NSData有不同的方法.

NSString *req_string = @"I am a NSString.";
NSData *req_data = [NSData dataWithBytes:[req_string UTF8String] length:[req_string length]];
// or
NSData *req_data_alt = [req_string dataUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

这两种方法有什么区别?

objective-c nsstring nsdata

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

连接nsstring并排除空值

我试图连接几个NSStrings,但想排除那些空值.我正在使用这个解决方案:

[NSString stringWithFormat:@"%@/%@/%@", three, two, one];
Run Code Online (Sandbox Code Playgroud)

但如果其中一个字符串为空呢?我想排除它.有任何想法吗?

谢谢.

iphone xcode objective-c nsstring ios

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

NSNonLossyASCIIStringEncoding等效于Android

我需要将一些聊天代码从iOS移植到Android.在将聊天消息发送到套接字之前,iOS代码使用NSNonLossyASCIIStringEncoding该类作为NSString :: dataUsingEncoding的参数.

你会如何在Android中做到这一点?关于相反解码的相同问题.

例如,如果不这样做,换行符就会消失在另一个移动设备上收到的消息中.

iOS上的代码:

NSData *data1 = [myStringTosend dataUsingEncoding:NSNonLossyASCIIStringEncoding];
NSString *goodValue = [[[NSString alloc] initWithData:data1 encoding:NSUTF8StringEncoding] autorelease];
Run Code Online (Sandbox Code Playgroud)

并解码:

NSData *data = [[NSData alloc] initWithData:[response dataUsingEncoding:NSASCIIStringEncoding]];
Run Code Online (Sandbox Code Playgroud)

到目前为止(并且不正确),在Android端进行编码:

OutputStream os = socket.getOutputStream();
os.write(request.getBytes("UTF-8"));
os.flush();
Run Code Online (Sandbox Code Playgroud)

并解码:

while ((bytesRead = is.read(buffer, 0, BUFFER_SIZE)) >= 0) {
    if (bytesRead > 0) response.append(new String(buffer, 0, bytesRead, "UTF-8"));
    if (bytesRead < BUFFER_SIZE) break;
}
Run Code Online (Sandbox Code Playgroud)

android nsstring ios

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

将字符串转换为url以将数据发送到mysql objective c iOS

我正在尝试将字符串转换为URL但未获得成功.任何更好的方法,或改进下面的代码.谢谢

NSString *strURL = @"http://domain.com/This Is My, Code for This. app";
NSString *escapedUrlString = [strURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(escapedUrlString);
Run Code Online (Sandbox Code Playgroud)

它显示此日志

http://domain.com/This2s2y ,芙ode
0.000000or2his.20x1.55e800047f4p-1029pp

这是我的实际代码发送和保存数据到mysql

NSString *data = @"This Is My, Code for This. app";
NSString *strURL = [NSString stringWithFormat:@"http://domain.com/connection.php?data=%@", data];   

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]];


NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];  

NSURL *urll = [NSURL URLWithString:strResult];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:urll];

[request setHTTPMethod:@"GET"];


NSURLResponse *response;
NSError *err;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
NSLog(@"responseData: %@", responseData);
Run Code Online (Sandbox Code Playgroud)

这没有成功,但是当我使用时

data = …
Run Code Online (Sandbox Code Playgroud)

nsurl nsstring ios

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

IOS isEqualToString不起作用

以下示例程序输出相同,但程序无法正常工作.

NSDirectoryEnumerator *directoryEnumerator = [[NSFileManager defaultManager]
                                   enumeratorAtPath:kDocdir];

for (NSString *pathi in directoryEnumerator)
{
   NSString *fileName_Manager = [pathi lastPathComponent];
   NSLog(@"fileName_Manager = %@",fileName_Manager);

   Artist *name_Databse =  [self.fetchedResultsController
                               objectAtIndexPath:IndexPath];
   NSLog(@"name_Databse     = %@",name_Databse.name);



   if ([fileName_Manager isEqualToString:name_Databse.name]) {
       NSLog(@"Same Name");
   }else{
       NSLog(@"Different Name");
   }

}
Run Code Online (Sandbox Code Playgroud)

输出:

2013-04-25 15:37:43.256 Player[36436:907] fileName_Manager = alizée - mèxico - final j'en
2013-04-25 15:37:43.272 Player[36436:907] name_Databse     = alizée - mèxico - final j'en
2013-04-25 15:37:44.107 Player[36436:907] Different Name
Run Code Online (Sandbox Code Playgroud)

名称中的特殊字符时无法正常工作.为什么会这样?谢谢 ...

这里有同样的问题:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@",[pathi lastPathComponent]];
Run Code Online (Sandbox Code Playgroud)

我如何在这里进行编辑?

iphone objective-c nsstring nsfilemanager ios

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

如何在iOS中将以下字符‡,†,*作为上标添加到NSString中

我需要追加下列字符‡, †, *为上标以NSStringiOS.需要你的帮助.我使用以下http://en.wikipedia.org/wiki/General_Punctuation_(Unicode_block)链接,但他们正在追加NSString,但我希望它们作为上标

nsstring ios ios5

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

Objective-C:如何在数组中找到最常见的字符串?

我有一个来自在线数据库的字符串数组,我试图确定最常用的单词.数组内部的值会有所不同,但我想查看我正在使用的任何集合或单词中最常见的单词.如果理论上我有一个以下阵列......

NSArray *stringArray = [NSArray arrayWithObjects:@"Duck", @"Duck", @"Duck", @"Duck", @"Goose"];
Run Code Online (Sandbox Code Playgroud)

如何遍历此数组以确定最常见的字符串,这显然是"鸭子"?

objective-c nsstring nsarray

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

长UIButton标题标签在中心而不是在右侧截断

我正在测试以下代码:

username = @"addagkagalkjagjalggxxaklgjagjglkjag";

NSString *fullUsername = [NSString stringWithFormat:@"%@%@", @"@", username];

UIButton *usernameButton = [UIButton buttonWithType:UIButtonTypeSystem];
[usernameButton setTitle:fullUsername forState:UIControlStateNormal];

usernameButton.frame = CGRectMake(100.0, 10.0, 215.0, 25.0);
Run Code Online (Sandbox Code Playgroud)

最终结果在标签的中心截断和省略.我最后想要它,但我必须为此设置什么属性?

objective-c uibutton nsstring ios ios8

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

确定UTF-8编码的NSData是否包含以null结尾的字符串

我在NSData类别中有NSData-to-NSString转换,因为我总是使用NSString方法:initWithData:encoding:.但是,根据这个答案,/sf/answers/172749951/,并不是那么简单.

到目前为止,我在我的NSData类别中使用了此方法,以便与其他数据对象中的方法保持一致,这些方法从具有相同名称的方法返回字符串:

- (NSString *) stringValue
{
    return [[NSString alloc] initWithData:self encoding:NSUTF8StringEncoding];
}
Run Code Online (Sandbox Code Playgroud)

到目前为止它是成功的,但我想确定一个字符串是否以null结尾,以决定是否应该使用此方法,也来自答案链接:

NSString* str = [NSString stringWithUTF8String:[data bytes]];
Run Code Online (Sandbox Code Playgroud)

如何确定UTF-8编码是否NSData包含以空值终止的字符串?


得到下面的答案后,我为我的NSDataCategory方法编写了更全面的实现,stringValue:

- (NSString *) stringValue
{
    //Determine if string is null-terminated
    char lastByte;
    [self getBytes:&lastByte range:NSMakeRange([self length]-1, 1)];

    NSString *str;

    if (lastByte == 0x0) {
        //string is null-terminated
        str = [NSString stringWithUTF8String:[self bytes]];
    } else {
        //string is not null-terminated
        str = [[NSString …
Run Code Online (Sandbox Code Playgroud)

objective-c character-encoding nsstring nsdata ios

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