小编Wae*_*ael的帖子

如何使用POI处理旧的Excel .xls文件?

由于POI具有更多功能,我从jxl切换到poi.但是,我无法处理以旧格式生成的xls文件.现在我收到此错误:

org.apache.poi.hssf.OldExcelFormatException:提供的电子表格似乎是Excel 5.0/7.0(BIFF5)格式.POI仅支持BIFF8格式(来自Excel版本97/2000/XP/2003)

现在我想将JXL和POI一起使用取决于xls版本,因此对于旧格式xls文件我将使用jxl而对于较新版本我将使用POI.这是一个好的解决方案吗?还有其他选择吗?

java excel jxl apache-poi

22
推荐指数
1
解决办法
1万
查看次数

awk脚本中的"BEGIN块必须有一个动作部分"错误

这是我的代码:

#!/bin/sh

filename=$(/usr/bin/find -name "INSTANCE-*.log")
echo "filename is " $filename

awk '
 BEGIN
 {   
   print "Processing file: " filename 
 }

 {
  if($0 ~ /Starting/) 
  { 
    print "The bill import has been Started on "$1 " " $2
  }

}'  $filename > report.txt
Run Code Online (Sandbox Code Playgroud)

当我执行它时,我收到以下错误:

BEGIN块必须有一个动作部分

我的BEGIN块有一个print声明,所以它有一个动作部分.我在这里错过了什么?

bash awk

12
推荐指数
1
解决办法
7573
查看次数

是否可以仅在Java中的cvsclient中检出目录结构?

我正在使用在org-netbeans-lib-cvsclient.jar与CVS通信的java类中执行各种cvs命令.我能够执行cvs checkout命令,添加,提交等.

但是,我需要找出哪个命令等同于cvs ls -R命令.

这是我编写的代码,允许执行cvs检查:

CheckoutCommand command = new CheckoutCommand();
command.setBuilder(null);
command.setRecursive(true); 
command.setModule(module);
if(revision!=null)
{
   command.setCheckoutByRevision(revision);
}
command.setPruneDirectories(true);
command.setUseHeadIfNotFound(true); 

executeCommand(command, AnonymizerConstants.DEFAULT_LOCAL_PATH);
Run Code Online (Sandbox Code Playgroud)

我需要为CVS ls -R或CVS rls做类似的事情

java cvs

7
推荐指数
1
解决办法
262
查看次数

从oracle转储文件导入特定的表?

我有一个巨大的oracle数据库的转储,所以不可能全部导入它.我想导入一个名为X的特定表.问题是X有外键.如果我只导入X,我将收到以下错误:

imp user/pass@dbName tables=X  rows=y ignore=Y
ORA-02291: integrity constraint violated - parent key not found
Run Code Online (Sandbox Code Playgroud)

我已经在本地拥有整个数据库(但没有数据),我想导入与X关联的所有表.我怎样才能实现这一点?我安装了plsql.我还需要知道这些表的顺序,以便首先知道要导入哪些表.

oracle plsql dump imp

6
推荐指数
1
解决办法
6124
查看次数

如何在java中为UTF8字符串做子串?

假设我有以下字符串:RückrufinsAusland我需要将其插入到最大大小为10的数据库中.我在java中执行了一个正常的子字符串,它提取了这个字符串Rückruf,其中包含10个字符.当它试图插入此列时,我得到以下oracle错误:

java.sql.SQLException:ORA-12899:值太大而不能列"WAEL"."TESTTBL"."DESC"(实际:11,最大值:10)原因是数据库有一个AL32UTF8字符集,因此ü将采取2个字符.

我需要在java中编写一个执行此子字符串的函数,但考虑到ü需要2个字节,因此在这种情况下返回的子字符串应该是Rückrufi(9个字符).有什么建议?

java oracle substring

6
推荐指数
1
解决办法
4954
查看次数

无法在命令行中列出cvs模块中的文件?

我在两台机器上执行了相同的cvs命令,它只在其中一台机器上运行.命令是:

cvs  -d %CVSROOT%  ls "module"
Run Code Online (Sandbox Code Playgroud)

*在第一台机器中,它直接返回模块下的文件.*我添加了-R参数以使调用递归,这次我收到错误:

cvs [ls aborted]:远程服务器不支持rls.请求的选项不可用.

在第二台机器中我甚至在没有添加-R命令的情况下直接出错:cvs [ls aborted]:服务器不支持ls

两台机器都连接到相同的服务器和相同的模块以及相同的CVS根和相同的CVSNT版本.

cvs cmd

6
推荐指数
1
解决办法
317
查看次数

在 Angular 中,不会为 angular mat-option 调用 onSelectionChange

我有一个包含输入的 mat-form-field 和一个包含 mat-option 的 mat-autocomplete。输入有 (blur) 事件,而 mat-option 有 (onSelectionChange) 事件。

我遇到的问题是,当我选择一个项目时,会在 mat-option 的 onSelectionChange 事件之前调用模糊。如果下拉列表中不存在该值,则模糊事件的方法会清空输入。如果我删除输入的 (blur) 事件,则 (onSelectionChange) 被调用。我需要在(模糊)事件之前调用它。

经过一些研究,我发现我可以在 (blur) 的函数中使用 .setTimeOut ,它允许在 (onSelectionChange) 的函数之后调用它的主体,但是,通过此修复,远离输入将延迟清空输入如果它有一个错误的值。

这是我拥有的 html 代码:

<mat-form-field [style.width.%]="fieldWidthPercentage">
    <input matInput #tagsInput (blur)="checkIfMatch()">
    <mat-autocomplete #auto="matAutocomplete">
      <mat-option *ngFor="let item of filteredAutoCompleteItems | async" 
      (onSelectionChange)="selected(item)" [value]="item">
      {{ item.name }}
    </mat-option>
    </mat-autocomplete>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)

这是(模糊)事件的函数:

checkIfMatch() {
    setTimeout(() => {
    // . . .
    }, 1000);
  }
}
Run Code Online (Sandbox Code Playgroud)

html angular-material angular

4
推荐指数
2
解决办法
1万
查看次数

如何使用正则表达式提取字符串的电话号码?

如果我有一个包含以下内容的字符串:这是1测试123-456-7890
我需要提取1234567890作为电话号码.我不想提取测试前的数字1.
如何在java中使用正则表达式?

我知道一种方法,但我不确定它是否是最好的解决方案:

String inputString = "This is 1 test 123-456-7890";
string result =  inputString.replaceAll("(\\d{3})-(\\d{3})-(\\d{4})",""); 
String phoneNumber = inputString.replace(result, "");
Run Code Online (Sandbox Code Playgroud)

java regex string

3
推荐指数
3
解决办法
2万
查看次数

在哪种情况下,java中的hashmap会丢失一些条目?

我写了一个hashmap并用键/值条目填充它.值是对象.该地图包含至少1万个条目.稍后,当我想使用某个键获取值时,地图似乎找不到此条目.这太奇怪了.即使每次在不同的条目下失败也是如此.我该怎么做才能解决这个问题?我使用weblogic作为服务器.我应该玩任何环境价值吗?

java weblogic hashmap key-value

3
推荐指数
1
解决办法
6129
查看次数

从 oracle 转储导入时表的顺序是否相关?

我正在尝试从 oracle 转储导入特定表,为了避免任何父键未找到异常,我想按照一定的顺序导入表。例如,如果表 X 依赖于表 A 和 B,我想首先导入 A 和 B:

imp user/pass@dbName tables=(A,B,X) rows=y ignore=Y 
Run Code Online (Sandbox Code Playgroud)

该命令能否保证 A 和 B 在 X 之前导入?

oracle dump oracle11g imp

2
推荐指数
1
解决办法
1561
查看次数

我想使用java集合以加快处理速度但同时避免内存堆异常?

我想使用一个java集合(列表,映射等)来缓存一些数据,这样我就可以使用这个缓存而不是直接检查数据库.我唯一担心的是集合大小,我希望这个缓存保存,假设只有1000个条目,一旦达到此计数,我想删除最旧的条目并添加一个新条目.这可能吗?

java heap collections map data-structures

1
推荐指数
1
解决办法
146
查看次数

在Java Swing中编码时延迟

我正在使用Java Swing编写GUI应用程序.我只有一个问题,就是我编写了一个在单击按钮时执行的大功能.首先,我将标签的值设置为"生成报告...",然后在函数的"返回"部分之前,我设置标签"完成生成报告"的值.实际发生的是标签的第一个设置没有生效.它们在我完成函数调用后生效,因此最终结果只显示"完成生成报告".

这是我正在使用的java代码:

 protected void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
        // TODO add your handling code here:

    try
    {
         jLabel6.setText("Generating Report");
         jProgressBar1.setVisible(true);
       generateReport(BillImportId.getText()); // This will take around 30 seconds to finish
    }
    catch (Exception e)
    {
      System.out.println("Exception occured: " + e);
    }
    }//GEN-LAST:event_jButton2ActionPerformed
Run Code Online (Sandbox Code Playgroud)

java user-interface swing

1
推荐指数
1
解决办法
100
查看次数

如果在角度中调用两次,如何等待相同的observable完成?

我的问题与如何"如何等待观察完成"不一样.我已经使用switchMap在我的代码中解决了这个问题.目前我有一个api get调用,在执行httpget之前,它将检查refreshToken是否已过期,在这种情况下,它将生成一个新令牌并等待它,然后执行httpget,这很棒.

我的问题是,如果我有以下senario:

this.getUsers();
this.getLocations();
Run Code Online (Sandbox Code Playgroud)

让我们来看一下令牌需要刷新的情况(我们需要等待刷新):首先我们调用this.getUsers()这将触发创建一个新令牌,并且在创建令牌后将获得get用户.同时我们也调用this.getLocations(),它也会触发创建一个新的令牌,并且不会在第一次完成时等待.我需要找到一种方法,以便第二次获得等待第一次完成,以便两者将使用相同的新令牌.

rxjs angular

1
推荐指数
1
解决办法
239
查看次数