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 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程