小编hkl*_*lel的帖子

反斜杠的字符串文字未正确关闭错误

这是我的代码的一部分

OutputStream os;
    if (isWin){
        os = new FileOutputStream(folder + "\" + destinationFile);
    }
    else{
        os = new FileOutputStream(folder + "/" + destinationFile);
    }
Run Code Online (Sandbox Code Playgroud)

我在反斜杠行中得到了"字符串文字没有被双引号错误正确关闭".如果我删除反斜杠或将其更改为正斜杠,则错误将消失.

我怎样才能解决这个问题?谢谢.

java

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

Swift从URL获取HTML

我正在尝试从URL获取并打印HTML。这是我的操作方法(使用Swift 2):

let testUrl = NSURL(string: "https://www.google.com")
var html = NSString()
do {
    html = try NSString(contentsOfURL: testUrl!, encoding: NSUTF8StringEncoding)
} catch{print(error)}
print(html)
Run Code Online (Sandbox Code Playgroud)

并在控制台中打印以下错误:

错误域= NSCocoaErrorDomain代码= 261“无法使用文本编码Unicode(UTF-8)打开文件。” UserInfo = {NSURL = https://www.google.com,NSStringEncoding = 4}

任何的想法?

html ios swift swift2

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

NSMutableArray addObject返回nil

StackOverflow上已经存在一些类似的问题.我确实检查了它们,并且在大多数情况下它返回nil,因为它NSMutableArray尚未初始化.但在我的情况下,我做了初始化.

这是我的代码的一部分:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    self.storedTimeZones = [[NSMutableArray alloc] init];
    NSData *storedData = [[NSUserDefaults standardUserDefaults] dataForKey:@"timeZones"];

    if (storedData != nil ) {
        self.storedTimeZones = [NSKeyedUnarchiver unarchiveObjectWithData:storedData];
    }

    NSString *str = [self.smallRegionArray[indexPath.row] stringByReplacingOccurrencesOfString:@"_" withString:@" "];
    [self.storedTimeZones addObject: str];
    NSLog(str); //the string was printed successfully.
    NSLog(@"%lu", (unsigned long)self.storedTimeZones.count); //'0' was printed
}
Run Code Online (Sandbox Code Playgroud)

更新 @Caleb是对的,[NSKeyedUnarchiver unarchiveObjectWithData:storedData返回零.我解决了这个问题:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    self.storedTimeZones = [[NSMutableArray alloc] init];
    NSData *storedData = [[NSUserDefaults standardUserDefaults] dataForKey:@"timeZones"];
    NSMutableArray *ary = …
Run Code Online (Sandbox Code Playgroud)

objective-c nsmutablearray nsarray ios

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

在 Swift 中使自定义类中的委托方法可重写

所以我有一个自定义类,并为其定义了一个委托方法。这是一个简化的示例:

protocol MyDelegate {
    func myDelegateMethod()
}

class Myclass (){
    //other stuff
    func myDelegateMethod(){
        //some operation
    }
}
Run Code Online (Sandbox Code Playgroud)

我想从另一个类重写这个方法。我用了

override func myDelegateMethod(){
}
Run Code Online (Sandbox Code Playgroud)

但我收到了这个错误

方法不会覆盖其超类中的任何方法

我明白这是说超类没有实现这个方法,所以我不需要使用关键字override。但就我而言,我确实myDelegateMethod在超级类中MyClass,并且我确实想覆盖它。

那么我怎样才能使这个函数可重写呢?

编辑:

如果你想查看实际的代码,这里是要点

delegates ios swift

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

标签 统计

ios ×3

swift ×2

delegates ×1

html ×1

java ×1

nsarray ×1

nsmutablearray ×1

objective-c ×1

swift2 ×1