1

首先,我是一个完整的初学者。

这可能是一个愚蠢的问题,但在这里:

我目前正在开发一个应用程序,它包含用户可以查看和阅读的拉丁文本。我将 Xcode 4 与 storybord 功能一起使用。应用程序的构建方式:用户选择作者 - 然后是书 - 然后应用程序显示文本。

我有点困惑,因为我需要有各种文本文件,这取决于用户的选择。

4

1 回答 1

0

正如我所做或所做的那样,通常只是将文件作为资源嵌入,并使用下面的代码读出文件

在 .h 文件中

-(NSString *)readFile:(NSString *)fileName;

在 .m 文件中

-(NSString *)readFile:(NSString *)fileName

{
    NSLog(@"readFile");

    NSString *appFile = fileName;    
    NSFileManager *fileManager=[NSFileManager defaultManager];
    if ([fileManager fileExistsAtPath:appFile])        
    {
        NSError *error= NULL;
        NSString *resultData = [NSString stringWithContentsOfFile: appFile encoding: NSUTF8StringEncoding error: &error]; 
        if (error == NULL)            
            return resultData;
    }
    return NULL;
}

愿这对你有帮助

享受编码:)

编辑

我所做的是根据一键单击的日期更改以及在viewWillApper我调用下面的函数时

-(void)dateAndContentReload
{
    NSLog(@"dateAndContentReload");

    NSLog(@"Appdelegate Date: %@",appDelegate.dateSelected);
    self.currentDate = appDelegate.dateSelected;
    NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"dd MMMM yyyy"];
    NSString *dateString = [dateFormatter stringFromDate: appDelegate.dateSelected];

    self.navigationItem.title = dateString; 
    [dateFormatter setDateFormat: @"Myyyy"];
    NSString *dateComp = [dateFormatter stringFromDate: appDelegate.dateSelected];
    //NSLog(@"date : %@",dateString);
    NSString *data;
    NSString *path;

    if(![dateComp isEqualToString: @"12012"])
    {
        NSString *size = [NSString stringWithFormat: @"%f",appDelegate.size]  ; 
        NSLog(@"dateAndContentReload size: %f",appDelegate.size);

        data = @"<html><body><font size='";
        data = [data stringByAppendingString: size];
        data = [data stringByAppendingString: @"'><P>"];

        data = @"Data not Available for Current Date.";

        data = [data stringByReplacingOccurrencesOfString: @"\n" withString:@"<br>"];

        data = [data stringByAppendingString:@"</P></font></body></html>"];
    }
    else
    {
        [dateFormatter setDateFormat:@"MMMMd"];
        dateString = [dateFormatter stringFromDate: appDelegate.dateSelected];
        [dateFormatter release];
        NSLog(@"new Format: %@",dateString);

        path = [[NSBundle mainBundle] pathForResource: dateString ofType: @"txt"];
        data = nil;
        NSString *size = [NSString stringWithFormat: @"%f",appDelegate.size]  ; 
        NSLog(@"dateAndContentReload size: %f",appDelegate.size);

        data = @"<html><body><font size='";
        data = [data stringByAppendingString: size];
        data = [data stringByAppendingString: @"'><P>"];

        data = [data stringByAppendingString: [self readFile: path]];

        data = [data stringByReplacingOccurrencesOfString: @"\n" withString:@"<br>"];

        data = [data stringByAppendingString:@"</P></font></body></html>"];
    }

    [self.currentView loadHTMLString: data baseURL: nil];
}

基本上我读取文件并UIWebView根据客户请求显示。

于 2012-07-07T09:11:52.797 回答