elephpant 2021-06-25 09:16 采纳率: 76.2%
浏览 24
已结题

读取excel中的数字到java程序中

Java实现,读取excel中的数字到java程序中

  • 写回答

1条回答 默认 最新

  • 404警告 2021-06-25 09:30
    关注
    public void batch<span class="hljs-constructor">Import(String <span class="hljs-params">fileName</span>, MultipartFile <span class="hljs-params">file</span>)</span> {
            <span class="hljs-keyword">if</span> (!fileName.matches(<span class="hljs-string">"^.+\\.(?i)(xls)$"</span>)<span class="hljs-operator"> && </span>!fileName.matches(<span class="hljs-string">"^.+\\.(?i)(xlsx)$"</span>)) {
                throw <span class="hljs-keyword">new</span> <span class="hljs-constructor">ValidateException(<span class="hljs-string">"上传文件类型不正确"</span>)</span>;
            }
            Workbook wb = null; <span class="hljs-comment">//创建工作簿</span>
            InputStream is = null;  <span class="hljs-comment">// io流</span>
            <span class="hljs-keyword">try</span> {
                is = file.get<span class="hljs-constructor">InputStream()</span>;
                wb = null;
                <span class="hljs-keyword">if</span> (!fileName.matches(<span class="hljs-string">"^.+\\.(?i)(xlsx)$"</span>)) {
                    wb = <span class="hljs-keyword">new</span> <span class="hljs-constructor">HSSFWorkbook(<span class="hljs-params">is</span>)</span>; <span class="hljs-comment">// 2003版</span>
                } <span class="hljs-keyword">else</span> {
                    wb = <span class="hljs-keyword">new</span> <span class="hljs-constructor">XSSFWorkbook(<span class="hljs-params">is</span>)</span>; <span class="hljs-comment">// 2007版</span>
                }
            } catch (IOException e) {
                e.print<span class="hljs-constructor">StackTrace()</span>;
            } finally {
                <span class="hljs-keyword">try</span> {
                    is.close<span class="hljs-literal">()</span>;
                } catch (IOException e) {
                    e.print<span class="hljs-constructor">StackTrace()</span>;
                }
            }
            Sheet sheet = wb.get<span class="hljs-constructor">SheetAt(0)</span>;
            <span class="hljs-keyword">for</span> (<span class="hljs-built_in">int</span> r = <span class="hljs-number">1</span>; r <= sheet.get<span class="hljs-constructor">LastRowNum()</span>; r++) {
                Row row = sheet.get<span class="hljs-constructor">Row(<span class="hljs-params">r</span>)</span>;
                <span class="hljs-keyword">if</span> (row<span class="hljs-operator"> == </span>null) {
                    continue;
                }
                <span class="hljs-keyword">if</span> (row.get<span class="hljs-constructor">Cell(0)</span><span class="hljs-operator"> == </span>null) {
                    row.create<span class="hljs-constructor">Cell(0)</span>;
                }
                <span class="hljs-keyword">if</span> (row.get<span class="hljs-constructor">Cell(2)</span> != null) {
                    row.get<span class="hljs-constructor">Cell(2)</span>.set<span class="hljs-constructor">CellType(Cell.CELL_TYPE_STRING)</span>;
                }
                String t = row.get<span class="hljs-constructor">Cell(2)</span>.<span class="hljs-keyword">to</span><span class="hljs-constructor">String()</span>;
            }
        }
    

    setCellType可以设置接收什么类型 建议都设置为string、然后在做转换比较好

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月23日
  • 已采纳回答 12月15日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么