小编Ste*_*tge的帖子

使用Java将HTML文件读取到DOM树

是否有一个解析器/库能够使用Java将HTML文档读入DOM树?我想使用DOM/XpathJava提供的标准API.

大多数库似乎都有自定义API来解决此任务.此外,大多数可用的解析器似乎都不支持将HTML转换为XML-DOM.

有关HTML DOM解析器的任何想法或经验?

html java parsing dom

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

有一个很好的Java网络库吗?

我目前正在搜索Java网络库.我想要做的是将XML,JSON或其他序列化消息从客户端发送到另一个客户端和/或客户端到服务器.

我的第一次尝试是为每条消息创建一个POJO,另外还有一个MessageWriter用于发送,MessageReader用于接收它.加上套接字和错误处理.这是一个很容易出错的工作.

我正在寻找的是一个从套接字中抽象出来的高级库.此外,它应该支持诸如消息的代码生成之类的东西.

谷歌的协议缓冲区(http://code.google.com/apis/protocolbuffers/)看起来很有前途.但有其他选择吗?重点不在于速度或安全性(目前),它应该是可靠的,并且实施时间较短.

java networking serialization

10
推荐指数
2
解决办法
8987
查看次数

用于记录的轻量级标记(wiki)语言

当我写论文或文档时,使用LaTeX或OpenOffice认为是过度的,因为我通常只需要一些标记元素(粗体,标题,列表......).我想使用wiki样式标记来编写我的文档,因为这非常有效.

例如:

= Introduction =
'''HTML''' is a markup language...
Run Code Online (Sandbox Code Playgroud)

最后,我想简单地将其转换为PDF.(跨平台也很好.)

compiler.exe -pdf input.wiki output.pdf
Run Code Online (Sandbox Code Playgroud)

是否有工具(或简单的工具链)来完成这项工作?

我个人比较喜欢使用乳胶作为一个转换步骤.有一些工具可以将轻量级语法转换为TeX,然后转换为PDF/PS.

markup wiki latex openoffice.org

10
推荐指数
3
解决办法
6348
查看次数

好的设计:如何将InputStreams作为参数传递?

我有一个大文件,我正在打开一个FileInputStream.此文件包含一些文件,每个文件都有一个从开头和大小的偏移量.此外,我有一个解析器,应该评估这样一个包含的文件.

File file = ...; // the big file
long offset = 1734; // a contained file's offset
long size = 256; // a contained file's size
FileInputStream fis = new FileInputStream(file );
fis.skip(offset);
parse(fis, size);

public void parse(InputStream is, long size) {
   // parse stream data and insure we don't read more than size bytes
   is.close();
}
Run Code Online (Sandbox Code Playgroud)

我觉得这不是好习惯.有没有更好的方法来做到这一点,也许使用缓冲?

此外,我觉得skip()方法会大大减慢阅读过程.

java inputstream

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

带有 Math.NET 约束的线性回归

我正在使用 Math.NET 执行简单的线性回归。

我在下面提供了一个通用代码示例。除了此示例之外,还可以使用 Fit 类进行简单的线性回归。

我另外想要的是指定额外的约束,比如固定的 y 截距或强制拟合通过固定点运行,例如 (2, 2)。如何在 Math.NET 中实现这一点?

var xdata = new double[] { 10, 20, 30 };
var ydata = new double[] { 15, 20, 25 };

var X = DenseMatrix.CreateFromColumns(new[] {new DenseVector(xdata.Length, 1), new DenseVector(xdata)});
var y = new DenseVector(ydata);

var p = X.QR().Solve(y);
var a = p[0];
var b = p[1];
Run Code Online (Sandbox Code Playgroud)

c# math linear-regression math.net

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