小编Kis*_*ore的帖子

Java中的操作系统名称不正确

最近我搬到了一台全新的64位Windows 7机器上.但是当我运行这段代码时,得到了错误的操作系统名称

String osName = System.getProperty("os.name");
System.out.println("OS Name = " + osName);
Run Code Online (Sandbox Code Playgroud)

输出来了:

OS Name = Windows Vista
Run Code Online (Sandbox Code Playgroud)

任何想法,我的代码或系统有什么问题?

提前致谢.

java windows-7

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

'IDENTIFIER' 规则也使用 ANTLR Lexer 语法中的关键字

在研究用于 Java 解析的 Antlr 3.5 语法时,注意到“ IDENTIFIER ”规则在 ANTLR 词法分析器语法中消耗了很少的关键字。词法分析器语法是

lexer grammar JavaLexer;

options {
   //k=8;
   language=Java;
   filter=true;
   //backtrack=true;
}

@lexer::header {
package java;
}

@lexer::members {
public ArrayList<String> keywordsList = new ArrayList<String>();
}

V_DECLARATION
:
( ((MODIFIERS)=>tok1=MODIFIERS WS+)? tok2=TYPE WS+ var=V_DECLARATOR WS* )
{...};

fragment
V_DECLARATOR
  :
  (
    tok=IDENTIFIER WS* ( ',' | ';' | ASSIGN WS* V_VALUE )
  )
  {...};

fragment
V_VALUE
: (IDENTIFIER (DOT WS* IDENTIFIER WS* '(' | ',' | ';'))
;

MODIFIERS
  :
  (PUBLIC | …
Run Code Online (Sandbox Code Playgroud)

java parsing antlr tokenize antlr3

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

加速Java应用程序

如何加速Java应用程序?

我正在开发一个Java应用程序,它逐行解析Cobol文件,从中提取必要的数据并填充到DB2数据库中.

如果要解析的文件更多,那么应用程序需要超过24小时才能完成,这是不可接受的.

所以我在一个单独的线程中做一些表格填充以加速...例如

ArrayList list = (ArrayList)vList.clone();
ThreadPopulator populator = new ThreadPopulator(connection, list, srcMbr);
Thread thread = new Thread(populator);
thread.run();
return;


And ThreadPopulator class is implementing Runnable interface and run method as

public void run()
{
    try
    {
        synchronized (this)
        {
           int len = Utils.length(list);
           for (int i = 0; i < len; i++)
           {
              .....
              stmt.addBatch();
            if ((i + 1) % 5000 == 0)
                    stmt.executeBatch(); // Execute every 5000 items.
           }
        }
    }
    catch (Throwable e)
    {
        e.printStackTrace(): …
Run Code Online (Sandbox Code Playgroud)

java db2 multithreading

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

如何使java.io.File.list()与Windows资源管理器中的顺序相同

如何获得java.io.File.list()与Windows资源管理器中相同的顺序?

在程序中,我正在创建Temp文件夹,例如Temp1,Temp2依此类推.但是当我使用java.io.File.list()检索文件夹列表,它给人的Temp1,Temp10等等.

请告诉我们如何获得与Windows资源管理器中显示的相同的订单列表?

谢谢

java windows

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

在多个 null 条件中使用 Java 8 可选功能

在多个 null 条件中使用Java 8 可选功能

条件是

Optional<Payee> payee = Optional.ofNullable(paymtTrans.getPayee());
    
    if (payee.isPresent()
            && payee.get().getPayeeAcc() != null
            && payee.get().getPayeeAcc().size() > 0
            && payee.get().getPayeeAcc().get(0).getBnk() != null
            && payee.get().getPayeeAcc().get(0).getBnk().getBnkCtryCode() != null) {
        String ctryCode = payee.get().getPayeeAcc().get(0).getBnk().getBnkCtryCode();
    }
Run Code Online (Sandbox Code Playgroud)

要求是使用 Java 8 功能而不检查空值!!

需要获取ctryCode吗?

java java-8 optional-chaining

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

在单词中拆分行并在Java Regex中删除字符串和数字单词

如何使用Java Regex在单词中分割一行并删除字符串和数字单词。这里输入是我收到的,输出是我想要的:

Input:
05  ECPRF-057     PIC S9(4) VALUE +0057 COMP-3.

Output:
ECPRF-057
PIC
S
VALUE
COMP-3


Input:
88  ACCT-LVL-CHG     VALUE 'WT ' 'WTO', "AA ",

Output:
ACCT-LVL-CHG
VALUE
Run Code Online (Sandbox Code Playgroud)

在此先感谢Kishore

java regex cobol

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

java.io.File.list()给出了顺序创建的文件夹的不同顺序

java.io.File.list()给出了顺序创建的文件夹的不同顺序

创建名称为的临时文件夹时

"Temp" + auto-incremented number 
e.g. Temp1, Temp2, Temp3...Temp10, Temp11 and so on. 
Run Code Online (Sandbox Code Playgroud)

但是当我使用java.io.File.list()来获取文件夹列表以便在创建文件夹时按顺序进一步处理,

but its giving as Temp1, Temp10, Temp11...Temp19, Temp2, Temp20, Temp21 and so on.

I also tried Arrays.sort(files); but no change in order of folder list
Run Code Online (Sandbox Code Playgroud)

请告诉我们如何获得与顺序创建的文件夹相同的订单列表?

java lexicographic

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