2014-09-19 7 views
0

У меня есть одна проблема, связанная с распаковкой файла .xsn из java-кода. Я застрял и искал какое-то разрешение.Unzip Microsoft Infopath .xsn файл с Java

Ребята, пожалуйста, помогите мне решить эту проблему?

Я пробовал с традиционным кодом java для класса ZipFile.

ответ

1

Файл XSN является действительно CAB-файлом. Попробуйте проверить в Microsoft CAB SDK здесь

http://support.microsoft.com/?scid=kb;EN-US;310618

+0

Спасибо Mohit за ваш быстрый ответ. Но мне нужно извлечь то же самое с использованием java-технологий. –

+0

Файл XSN - это архив, содержащий много файлов (их можно извлечь, например, путем изменения расширения .xsn на .cab). Для файлов CAB я уже разместил URL-адрес. – Mohit

+0

Большое спасибо Mohit за ваш быстрый ответ. Я пробовал с родной командой microsoft «expand» [Win7 onwards] и «extract» [ниже Win7]. Он отлично работает для моего требования. Большое спасибо. Ниже приведен фрагмент кода для его достижения. –

2

Ниже ответ на мое требование, которое может быть полезным для вас.

 String command = "expand \"C:\\Users\\amishra\\Desktop\\backup\\BOM.xsn\" \"C:\\Users\\amishra\\Desktop\\backup\" -F:*";    
     Process process = Runtime.getRuntime().exec(command); 

     BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream())); 
     BufferedReader stdError = new BufferedReader(new InputStreamReader(process.getErrorStream())); 

     String s; 

     while ((s = stdInput.readLine()) != null) { 
      System.out.println(s); 
     } 

     // Read command errors 
     System.out.println("Standard error: "); 
     while ((s = stdError.readLine()) != null) { 
      System.out.println(s); 
     }