我正在制作一个涉及内部数据库的Android应用程序。我决定打开数据库文件,而不是在应用程序中生成它。
这是代码:
private static String databasePath = "H:\Workspace\PetrocVLE\assets";
public SQLiteDatabase db = SQLiteDatabase.openDatabase(databasePath, null, 0);
这是给出的错误:
Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )
我认为这可能意味着databasePath变量中的符号在字符串变量中是不允许的,但是我已经看到了在java中使用这些符号的其他String变量。
有谁能告诉我我做错了什么?三江源
答案 0 :(得分:2)
\
是Java Strings
中使用的特殊字符,您需要将其转义,
private static String databasePath = "H:\\Workspace\\PetrocVLE\\assets";
但是,Android上的文件路径通常采用此格式
private static String databasePath = "/Workspace/PetrocVLE/assets";
答案 1 :(得分:2)
请改用/
,因为它与操作系统无关:
private static String databasePath = "H:/Workspace/PetrocVLE/assets";
答案 2 :(得分:0)
您可能还希望独立于驱动器,并引用代表您的驱动器号的变量或尝试使用relative paths。