1

Is there a way to create open protected excel file in Java? I'm looking at JExcelApi and Apache Poi projects but with both of them I cannot figure out how to protect generated xls file. I want to assure that generated file can be opened only by people that know password phrase.

mgamer
  • 12,892
  • 24
  • 85
  • 145
  • I am pretty sure that you can only Write protect the files using Java (any package). I don't think it is possible to place a password on opening the file though, I could be wrong. – amischiefr Jul 07 '09 at 12:52

3 Answers3

1

I would recommend using JACOB (COM->Java bridge), and control Excel via COM automation. This will, of course, require that Excel be installed on the machine in question.

Kevin Day
  • 15,692
  • 8
  • 38
  • 67
0

One trick I've found when using POI is to create an Excel file with the feature I want embedded in it (e.g. a macro), and then use POI to open the file, modify it and then write it out.

So you may get what you want by creating a password-protected file, and then seeing if you can open and modify (and save) via POI. Of course, if password-protecting encrypts as well, then you're out of luck.

Brian Agnew
  • 261,477
  • 36
  • 323
  • 432
  • That's a nice idea but I can't figure out how to open protected file either... Seeing that even OpenOffice can't open/write password protected xls make me now preety sure it can't be done at all. – mgamer Jul 07 '09 at 13:54
  • Mmm. Think I'm out of ideas currently :-( – Brian Agnew Jul 07 '09 at 14:01
0

you can think it another way as with logic...

Runtime runtime = Runtime.getRuntime();
        Process exec;
        try {
            exec = runtime.exec("attrib -h C:\\exce.csv");
            int waitFor = exec.waitFor();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
        }
RTA
  • 1,231
  • 2
  • 14
  • 32