日期:2014-05-20  浏览次数:20669 次

操作excel文件(并不是单个简单的读写)
读取一个excel文件其中一列的字符串数据,然后循环把这列的所有数据取出来进行单个解密,解密之后再指定位置存储到原excel文件中的其他列里面,急急急 求各位大虾帮忙,在下感激不尽 (java代码)拜托各位了,以前做项目主要是处理业务逻辑,在这方面关注的比较少,最多也就会单纯的些个读,写,拜托各位能解决的大虾不吝相助 ,感激不尽 


------解决方案--------------------
这也是个读写啊,跟你以前写的差不多!
------解决方案--------------------
先把一列数据读出来,lz不是会读数据么;然后解密,lz要用什么算法解密;最后把加密好的数据再存回去就可以了。这个和简单的读写有区别么
------解决方案--------------------
Java code

归根到底还是操作excel的业务逻辑问题:
我写了一个更改的实现。。解密部分lz自己加吧

    /**
     * 更改excel文件列
     * @param filePath
     *             文件包装对象
     * @throws Exception
     */
    public static void updateXLS(File filePath) {    
        try {
            // 获取excel工作薄
            Workbook rwb = Workbook.getWorkbook(filePath);
            // 将要修改的excel copy到一个写入同一个excel--当前文件更改
            WritableWorkbook wwk = Workbook.createWorkbook(filePath, rwb);
            // 获取第一个sheet
            WritableSheet ws = wwk.getSheet(0);
            // 将sheet中的所有行读取出来
            int rows = ws.getRows();
            // 从第一行开始取出列。。连同第一行标题列一起覆盖
            for (int d = 0; d < rows; d++) {
                // 取出第一列的数据,从0开始
                Cell b00 = ws.getCell(0, d);
                String strb = b00.getContents();
                
                // 解密操作...
                
                // 将第一列的数据写入覆盖第三列,从0开始
                Label label = new Label(2, d, strb);
                // 修改写入表格列
                ws.addCell(label);
            }    
            wwk.write();
            wwk.close();
            rwb.close();
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }

------解决方案--------------------
密之后再指定位置存储到原excel文件中的其他列里面,这个具体是存储到哪
------解决方案--------------------
探讨

密之后再指定位置存储到原excel文件中的其他列里面,这个具体是存储到哪

------解决方案--------------------
你是用的什么读取excel的啊 的有专门的包的 poi jacob jxl等....
------解决方案--------------------
网上搜搜jxl,java加密、解密这个关键词就能解决你的问题了。
------解决方案--------------------
探讨

谢谢各位大虾的热心帮助 问题解决了 我是用swing写个这样的工具 操作没问题了,可是使用java对excel文件操作完后为什么会造成文件破损?

------解决方案--------------------
ntko 不会用吗?