小编Xen*_*oRo的帖子

RegEx:最小可能匹配或非同意匹配

如何告诉RegEx(.NET版本)获得最小的有效匹配而不是最大的?

.net regex

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

如何使用Apache POI加载大型xlsx文件?

我有一个大的.xlsx文件(141 MB,包含293413行,每行62列)我需要在其中执行一些操作.

我在加载此文件(OutOfMemoryError)时遇到问题,因为POI在XSSF(xlsx)工作簿上占用大量内存.

这个问题类似,提出的解决方案是增加VM的分配/最大内存.

它似乎适用于那种文件大小(9MB),但对我来说,即使分配所有可用的系统内存,它也只是不起作用.(嗯,考虑到文件大于15倍,这并不奇怪)

我想知道是否有任何方法以不占用所有内存的方式加载工作簿,但是,没有基于(进入)XSSF的底层XML进行处理.(换句话说,维护清教徒POI解决方案)

如果没有强硬的话,欢迎你说("没有."),并指出了解决"XML"问题的方法.

java memory out-of-memory apache-poi xssf

41
推荐指数
5
解决办法
8万
查看次数

Java:Apache POI:我可以从MS Word(.doc)文件中获取干净的文本吗?

使用Apache POI时,我(以编程方式)从MS Word文件获取的字符串与我用MS Word打开文件时可以看到的文本不同.

使用以下代码时:

File someFile = new File("some\\path\\MSWFile.doc");
InputStream inputStrm = new FileInputStream(someFile);
HWPFDocument wordDoc = new HWPFDocument(inputStrm);
System.out.println(wordDoc.getText());
Run Code Online (Sandbox Code Playgroud)

输出是一行,有许多"无效"字符(是的,"盒子"),还有许多不需要的字符串,如" FORMTEXT"," HYPERLINK \l "_Toc##########""("#"是数字数字)," PAGEREF _Toc########## \h 4"等.

以下代码"修复"了单行问题,但保留了所有无效字符和不需要的文本:

File someFile = new File("some\\path\\MSWFile.doc");
InputStream inputStrm = new FileInputStream(someFile);
WordExtractor wordExtractor = new WordExtractor(inputStrm);
for(String paragraph:wordExtractor.getParagraphText()){
  System.out.println(paragraph);
}
Run Code Online (Sandbox Code Playgroud)

我不知道我是否使用了错误的方法来提取文本,但这就是我在查看POI的快速指南时所提出的.如果我是,那么正确的方法是什么?

如果输出正确,是否有一种标准的方法来摆脱不需要的文本,或者我是否必须编写自己的过滤器?

java text ms-word extraction apache-poi

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

与 OOP(或其他范式)相比,ECS(实体-组件-系统)架构模式有哪些缺点?

由于 Unity ECS,我最近阅读了很多有关 ECS 的文章。

ECS架构有很多明显的优势:

ECS 是面向数据的:数据倾向于线性存储,这是系统访问它的最佳方式。在体面的 ECS 实现中,数据是按顺序存储和处理的,对于任何给定的系统处理它的组件集几乎没有中断。

ECS 非常分割它自然地将数据与行为分开,强制执行“组合而非继承”(google it)等。

ECS 对并行处理和多线程非常友好:由于事物的结构方式,许多实体和组件可以避免冲突并与其他系统并行处理。


然而,ECS 的缺点(与 OOP 或实体组件 [没有系统] 相比,直到最近在包括 Unity 在内的游戏引擎中很常见)很少被谈论,如果有的话。它们存在吗?如果他们这样做了,他们是什么?

architecture oop unity-game-engine data-oriented-design entity-component-system

7
推荐指数
2
解决办法
3095
查看次数

使用 Java,如何在不使用 GUI 组件的情况下检测按键?

使用 Java,是否可以在不使用 GUI 元素的情况下检测用户操作,例如按键、鼠标按钮和/或鼠标的屏幕位置?

如果是,我该如何实施?

否则,有什么选择?


我在这个问题上找到的唯一 StackOverflow 来源是这个问题,没有答案。

我在 StackOverflow 之外找到的关于这个问题的唯一来源指向“隐形 GUI”解决方案,希望是我真正想要避免的事情。

java keyboard keylistener event-handling mouseevent

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

Unity中的单元测试-获取InvalidCastException-为什么?以及如何解决?

我试图在SO方面的问题中尽可能具体和有帮助,但对于这一问题,那几乎没有任何意义,因为我绝对没有暗示为什么会这样的最微妙线索。

它发生在任何/每个测试(甚至是“空白”测试)上。而且我已经尝试过(卸载和)更新统一性。-没工作。

无论如何,这是异常的堆栈跟踪:

2017.11.16 14:54:24.308   ERROR System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada.
System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada. ---> System.InvalidCastException: Não é possível converter um objeto do tipo 'NUnit.Engine.CallbackHandler' no tipo 'System.Web.UI.ICallbackEventHandler'.
   em NUnit.Framework.Api.FrameworkController.LoadTestsAction..ctor(FrameworkController controller, Object handler)
   --- Fim do rastreamento de pilha de exceções internas ---
   em System.RuntimeMethodHandle._InvokeConstructor(Object[] args, SignatureStruct& signature, IntPtr declaringType)
   em System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   em System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, …
Run Code Online (Sandbox Code Playgroud)

nunit unit-testing exception unity-game-engine

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

如何在三维空间中找到移动目标的拦截坐标?

假设我有一艘宇宙飞船(source); 小行星(target)就在附近.

我知道,在3D空间(XYZ向量):

  • 我的船的位置(sourcePos)和速度(sourceVel).
  • 小行星的位置(targetPos)和速度(targetVel).

(例如sourcePos= [30,20,10]; sourceVel= [30,20,10]; targetPos= [600,400,200]; targetVel= [300,200,100]`)

我也知道:

  • 船的速度恒定的.
  • 小行星的速度恒定的.
  • 我的船的抛射速度(projSpd)是恒定的.
  • 射击后我的船的弹丸轨迹线性的(/直的).

(例如projSpd= 2000.00)

如何计算我需要射击的拦截坐标以击中小行星?


笔记:

这个问题是基于这个Yahoo - Answers页面.

我也在谷歌搜索类似的问题,在这里搜索SO,但大多数答案都是针对2D空间的,而对于3D的少数答案,解释和伪代码都没有解释什么是做什么和/或为什么,所以我不能真正理解将它们成功应用于我的代码.以下是我访问过的一些页面:

Danik Games Devlog,Blitz3D论坛主题 …

math 3d position prediction coordinates

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

可以自动化NTLM身份验证的哪些参数,以及如何使用java进行自动化?

我想知道在NTLM身份验证期间使用的6个参数可以自动化,这些参数是:

"用户名" - 用于登录当前正在使用的操作系统配置文件的用户名.- 已经自动化,使用System.getProperty("user.name")

"密码" - 与上述相同.- 可能不能自动化,但我一直都不确定,直到我试着问...

"ProxyAddress" - 代理的地址,身份验证被"握手"以便通过.- 我已经伪自动化,但它的固定代码,因此很糟糕.

"ProxyPort" - 代理上的侦听端口,先前已解释过.- 我已经伪自动化,但它的固定代码,因此很糟糕.

"工作站" - 我的PC在本地网络中的ID或其他东西......我目前正在使用我的机器的属性ID及其工作,但我不知道它是否是正确的值,或者是否需要值首先.- 不知道如何自动化,但我知道这是可能的.需要帮忙

"域名" - 不知道它指的是哪个域,因此不知道它应该具有什么价值...留空似乎正在工作...... - 不知道如何自动化,但我知道它是可能的.需要帮忙

额外信息:我正在使用HtmlClient库进行处理,包括身份验证.

DefaultCredentialsProvider credentialProvider = (DefaultCredentialsProvider) webClient.getCredentialsProvider();
    credentialProvider.addNTLMCredentials(username, password, proxyAddress, proxyPort, workstation, domain);
    webClient.setUseInsecureSSL(true);
Run Code Online (Sandbox Code Playgroud)

java authentication automation ntlm

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

如何在 JFrame 显示后从其中自动执行任务?

如何在显示(类扩展)后立即自动执行任务(使用工作线程)JFrame,同时如果可能的话,在类扩展中维护该任务的起始代码JFrame

我找到的所有示例,以及到目前为止我自己如何使用它,仅显示 GUI 类扩展,其中的代码在启动和显示 GUI 后对输入做出反应,任何自动的进一步操作都在启动和显示的代码之外完成。显示图形用户界面;换句话说,我(看到/没有)看到的是下面示例代码中的注释:

public static void main(String args[]) {
    //Set the Look and Feel
    //...

    //Create and display the form
    java.awt.EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            new MyFrame().setVisible(true); //<--- I never see automatic stuff happening
            //...within here (class). I realize it can be done overriding setVisible(), but
            //...that would be cheating in regards to the intent of this question.
        }
    });

    //In the examples I found, and …
Run Code Online (Sandbox Code Playgroud)

java user-interface swing netbeans task

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