首先我们保存词典的状态,究竟是英文到中文,还是中文到英文。
第一种,用户默认文件。
- (IBAction)pressExchange:(UIBarButtonItem *)sender {
_chineseToEnglish=!_chineseToEnglish;
if (_chineseToEnglish) {
sender.image=[UIImageimageNamed:@"中英"];
}
else
{
sender.image=[UIImageimageNamed:@"英中"];
}
NSUserDefaults *ud=[NSUserDefaultsstandardUserDefaults];
[ud setBool:_chineseToEnglishforKey:@"cn2en"];
//保存bool值
}
- (void)viewDidLoad
{
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// _textField.delegate=self;//这样也可设置委托
_chineseToEnglish=[[NSUserDefaultsstandardUserDefaults] boolForKey:@"cn2en"];
if (_chineseToEnglish) {
_exchangeButton.image=[UIImageimageNamed:@"中英"];
}
else
{
_exchangeButton.image=[UIImageimageNamed:@"英中"];
}
}
存放路径:点开Finder,点左上角的前往菜单,按住Option键,windows按Alt键。点开资源库。Application Support->Iphone Simulator->编译版本->Application->找到应用目录->Library->Preferences->*.TinyDictionary.plist
记录查询内容。
在pressFind中加入:
if ([_textField.textlength]==0) {
return;
}
[[NSUserDefaultsstandardUserDefaults] setObject:_textField.textforKey:@"findValue"];
- (void)viewDidLoad
{
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// _textField.delegate=self;//这样也可设置委托
NSUserDefaults* ud=[NSUserDefaultsstandardUserDefaults];
_chineseToEnglish=[udboolForKey:@"cn2en"];
if (_chineseToEnglish) {
_exchangeButton.image=[UIImageimageNamed:@"中英"];
}
NSString *find=[ud stringForKey:@"findValue"];
if(find)
{
_textField.text=find;
}
}
Documents目录:数据文件写入到这个目录下。用于存储用户数据或其它应该定期备份的信息。
appName.app 目录:程序包目录,包含应用程序的本身。
Library目录:
Preferences 目录包含应用程序的偏好设置文件。不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好。
Caches 目录用于存放应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息。
tmp 目录:这个目录用于存放临时文件,保存应用程序再次启动过程中不需要的信息。
获取路径的方法
获取沙盒目录路径的函数
NSString *homeDir = NSHomeDirectory();
获取Documents目录路径的方法:
NSArray *paths= NSSearchPathForDirectoriesDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *docDir=[paths objectAtIndex:0];
获取Caches目录路径的方法:
NSArray* paths=NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES);
NSString *cachesDir =[paths objectAtIndex:0];
获取tmp目录路径的方法:
NSString *tmpDir=NSTemporaryDirectory();
第二种,查询完成后,保存译文到文件。
修改pressFind
if (err) {
NSLog(@"error=%@",[errdescription]);
}
else
{
_lblResult.text=strResult;
NSString *path=[NSHomeDirectory()stringByAppendingPathComponent:@"aaa.html"];
[strResultwriteToURL:path atomically:YESencoding:encode error:nil];
}
NSString *path=[NSHomeDirectory()stringByAppendingPathComponent:@"aaa.html"];
NSStringEncoding encode =CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSError *err=nil;
NSString *str=[NSStringstringWithContentsOfFile:path encoding:encodeerror:&err];
if(!err)
_lblResult.text=str;
else
NSLog(@"error %@",[errdescription]);
源码地址:http://download.csdn.net/detail/cloud95/5186199