public class UserDicImportExport extends AsyncTask<String, String, String[]>{
private UserDictionaryToolsList mActivity;
+ private String[] mResultString;
+
public UserDicImportExport(UserDictionaryToolsList activity) {
mActivity = activity;
@Override
protected String[] doInBackground(String... params) {
boolean result = false;
- String[] resultString = new String[2];
+ mResultString = new String[2];
if (params[0].equals("import")) {
result = importUserDic(params[1], params[2], params[3]);
if (true == result) {
- resultString[0] = "true";
- resultString[1] = mActivity.getString(R.string.dialog_import_dic_message_done);
+ mResultString[0] = "true";
+ mResultString[1] = mActivity.getString(R.string.dialog_import_dic_message_done);
}
else{
- resultString[0] = "false";
- resultString[1] = mActivity.getString(R.string.dialog_import_dic_message_failed);
+ mResultString[0] = "false";
+ mResultString[1] = mActivity.getString(R.string.dialog_import_dic_message_failed);
}
}
else{
- resultString = exportUserDic(params[1], params[2], params[3]);
- /*
- if (true == result) {
- resultString[0] = "true";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_done);
- }
- else{
- resultString[0] = "false";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
- }
- */
+ exportUserDic(params[1], params[2], params[3]);
}
- return resultString;
+ return mResultString;
}
@Override
protected void onPostExecute(String[] result) {
*/
private boolean importUserDic(String file, String sd, String flash) {
File fileSdCard = getExternalStorageDirectory();
- File fileBase = null;
- if (fileSdCard != null) {
- //fileBase = new File(fileSdCard, mActivity.getPackageName());
- fileBase = new File(fileSdCard, "nicoWnn");
- if (!fileBase.exists()) {
- return false;
- }
+ if (null == fileSdCard) {
+ return false;
+ }
+ File fileBase = createNicoWnnDirectory(fileSdCard);
+ if (null == fileBase) {
+ return false;
}
// import learn dic
File sFile = new File(fileBase, sd);
/*
*
*/
- private String[] exportUserDic(String file, String flash, String sd) {
- String[] resultString = new String[2];
- resultString[0] = "true";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_done);
+ private boolean exportUserDic(String file, String flash, String sd) {
+ mResultString[0] = "true";
+ mResultString[1] = mActivity.getString(R.string.dialog_export_dic_message_done);
File fileSdCard = getExternalStorageDirectory();
- File fileBase = null;
- if (fileSdCard != null) {
- //fileBase = new File(fileSdCard, mActivity.getPackageName());
- fileBase = new File(fileSdCard, "nicoWnn");
- if (!fileBase.exists()) {
- if (!fileBase.mkdir()) {
- resultString[0] = "false";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
- return resultString;
- } // mkdir
- } // exists
- } // sd card
- else{
- resultString[0] = "false";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
- return resultString;
+ if (null == fileSdCard) {
+ mResultString[0] = "false";
+ mResultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
+ return false;
+ }
+ File fileBase = createNicoWnnDirectory(fileSdCard);
+ if (null == fileBase) {
+ return false;
}
try {
File fileSave = new File(fileBase, file);
}
fout.write(end.getBytes());
} catch (Exception e) {
- resultString[0] = "false";
- resultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
- return resultString;
+ mResultString[0] = "false";
+ mResultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
+ return false;
} finally {
//
}
File sFile = new File(flash);
File dFile = new File(fileBase, sd);
copyFile(dFile, sFile);
- return resultString;
+ return true;
}
/*************************************************************************************/
/* file load/save */
Log.d("sdcard", "mount sdcard!!\n");
return Environment.getExternalStorageDirectory();
}
+ /*
+ *
+ */
+ private File createNicoWnnDirectory(File fileSdCard) {
+ boolean result;
+ File fileOld = null;
+ File fileNico = null;
+ fileOld = new File(fileSdCard, "OpenWnn");
+ fileNico = new File(fileSdCard, "nicoWnn");
+ if (fileOld.exists()) {
+ result = fileOld.renameTo(fileNico);
+ if (false == result) {
+ mResultString[0] = "false";
+ mResultString[1] = mActivity.getString(R.string.dialog_importexport_rendir_failed);
+ return null;
+ }
+ return fileNico;
+ }
+ if (!fileNico.exists()) {
+ if (!fileNico.mkdir()) {
+ mResultString[0] = "false";
+ mResultString[1] = mActivity.getString(R.string.dialog_export_dic_message_failed);
+ return null;
+ } // mkdir
+ } // exists
+ return fileNico;
+ }
+ /*
+ *
+ */
private boolean copyFile(File dFile, File sFile) {
if (!sFile.exists()) {
return false;