rangeOfString:@“fReturnValue”]。location == NSNotFound方法永远不会被触发

时间:2014-01-14 04:18:58

标签: ios objective-c json

我已将该应用提交到应用商店。所以我不能对前端代码做任何改动。但我想使用Web服务(后端代码)

更改应用程序的功能

所以我需要在条件下开火。

if (![returnValue rangeOfString:@"fReturnValue"].location == NSNotFound)
{
    returnValue = [_common getWebServiceResponseValueWithOutUnnecessary:returnValue withFieldName:@"fReturnValue"];
}

我的返回值是,

{"d":{"__type":"System.Data.DataTable","fReturnValue":"[{\"FldName\":\"PurchsOrdr\",\"TblName\":\"FCDOCHST\",\"Module\":\"Document\",\"Mandatory\":1,\"FldCaptn\":\"Purchase Order\",\"Editable\":0,\"CustomFld\":0}"}}

但是这种条件永远不会成立。如果条件改变了json字符串,我不能这样做吗?

请帮忙。我尝试了很多时间。

1 个答案:

答案 0 :(得分:2)

你的代码应该是

if ([returnValue rangeOfString:@"fReturnValue"].location != NSNotFound)

但它是

if ((![returnValue rangeOfString:@"fReturnValue"].location) == NSNotFound)

类似于

NSInteger loc = [returnValue rangeOfString:@"fReturnValue"].location;
loc = !loc; // if loc is 0, it changed to 1, otherwise it changed to 0
if (loc == NSNotFound) // so this is not possible to be true

你现在应该开始制作新版本了...顺便说一句,如何在不测试的情况下提交你的应用程序...