小编pet*_*ust的帖子

我可以避免在Windows上使用CP1252吗?

我希望我的所有工具包都使用UTF-8,但发现Windows上的某些工具似乎使用CP1252(它似乎是Windows特定的).这是否会创建不兼容的输出,如果是,则创建哪些代码点?如果是这样,我可以做些什么吗?

(我不完全理解这些问题,所以我很感激这些编码的基础教育).

utf-8 cp1252

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

是否可以构建大型XSLT库?

我已经使用XSLT多年,并尝试创建中等大小的库(例如50个导入的XSLT文件).我发现这很困难,可能是因为我没有有用的开发工具.我现在一般不使用超过几百行的XSLT文件.

是否有广泛使用的大型XSLT库?是否有支持构建XSLT库的IDE和工具(例如Eclipse和Maven的类似物)?或者XSLT应用程序的大小是否有效?

xslt

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

使用Tesseract hOCR提取文本属性

我正在使用Tesseract(在Windows上)从科学图(例如绘图)中提取文本,图中有许多孤立的单词或数字,但没有句子或段落。然后,我将HTML转换为SVG。效果很好,除了我无法得到

  • 字体大小
  • 字体系列
  • 文本锚点的xy坐标
  • 文本方向(例如旋转的Math.PI / 2用于标记图形轴)

我可以从边界框中获得粗略的字体大小,但这取决于字符是升序还是降序。因此,下面的所有行(在hOCR输出中)都具有相同的字体系列和大小:

<span class='ocrx_word' id='word_6' title="bbox 1177 491 1637 549">Herpetotherinae</span> 
<span class='ocrx_word' id='word_13' title="bbox 1183 1179 1514 1228">Cathartidae</span>
<span class='ocrx_word' id='word_35' title="bbox 1847 1742 1907 2077">Accipitridae</span> 
Run Code Online (Sandbox Code Playgroud)

span_1的降序(在“ p”中),bbox的y高度为58,而span_2的bbox的高度为49(无降序),而span_3的bbox的x宽度为60,表示文本已旋转。但是,bbox本身不足以准确定位文本或确定文本方向。

我想使用Tess4J并使用任何会导致获得这些属性的API。

如果有人已经从Tess4J编写了SVG输出,我将不胜感激。(我的任何代码都是F / OSS)。

java ocr fonts svg tesseract

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

C# 扩展方法是否仅可用于实例方法?

我最近开始有用地使用 C# 扩展方法。SO 示例和文档表明它们仅用于实例方法(即使用this关键字)。可以将它们(或其他方法)与静态/类方法一起使用吗?

(我的特殊要求是将 Java 代码转换为 C#,其中“大部分代码”不需要编辑。Java 实例方法(例如 Java String.indexOf())可以通过调用 C# 的扩展方法路由string.IndexOf())。我想对 Java Math.abs()=> C#做同样的事情Math.Abs())。

总结不。答案表明,拥有它是一件合理的事情,但不太可能很快发生。变通方法需要编辑创建新类或类似的东西,可能不值得。

c# extension-methods static

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

在c#扩展函数中使用泛型

我正在使用泛型将Java代码转换为C#并且遇到了类似容器的问题:

public static class MyExtensions
{
    public static void add(this List<object> list, object obj)
    {
        list.Add(obj);
    }
    public static void add(this List<string> list, string s)
    {
        list.Add(s);
    }
}
Run Code Online (Sandbox Code Playgroud)

似乎泛型在比较参数时丢失了,两种方法相互冲突.我想知道仿制药是否可以这种方式使用.是否可以使用单个支持所有列表操作:

    public static void add(this List<object> list, object obj)
    {
        list.Add(obj);
    }
Run Code Online (Sandbox Code Playgroud)

例如?

总结所有响应都有相同的解决方案.列表可以抽象为ICollection.总的来说,对于生产代码来说,这可能不是一个好主意.

c# generics extension-methods

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

我应该将Java中的静态嵌套类重构为单独的类吗?

我继承了包含静态嵌套类的代码:

public class Foo {

// Foo fields and functions
// ...
    private static class SGroup {
        private static Map<Integer, SGroup> idMap = new HashMap<Integer, SGroup>();

        public SGroup(int id, String type) {
// ...
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

从阅读SO(例如Java内部类和静态嵌套类),我相信这相当于两个单独文件中的两个单独的类:

 public class Foo {

    // Foo fields and functions
    // ...
}
Run Code Online (Sandbox Code Playgroud)

public class SGroup {
    static Map<Integer, SGroup> idMap = new HashMap<Integer, SGroup>();

    public SGroup(int id, String type) {
// ...
    }
}
Run Code Online (Sandbox Code Playgroud)

如果这是正确的,维护静态嵌套类结构有什么好处,还是应该重构?

java static nested class

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

`java -cp`只是`java -classpath`的缩写?

在命令行上java -cp只是缩写java -classpath

(我似乎记得他们可能有不同的行为,但找不到明确的文档).

更新感谢(@AlBlue)确认我的记忆确实是正确的并且他们曾经是不同的.

java classpath

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

从不包含pom.xml的远程目录运行mvn exec:java

我有一个内置在'/ some/where'的maven项目,我希望从另一个目录'/ foo/bar'运行/执行.我目前正在运行如下命令:

cd /some/where
mvn exec:java -Dexec.mainClass=org.xmlcml.cml.rest.Client 
Run Code Online (Sandbox Code Playgroud)

/some/where/pom.xml
Run Code Online (Sandbox Code Playgroud)

我希望做的事情如下:

cd /foo/bar
mvn -p /some/where/pom.xml exec:java -Dexec.mainClass=org.xmlcml.cml.rest.Client 
Run Code Online (Sandbox Code Playgroud)

但不知道语法或是否允许.

如果允许,相对文件名在哪里引用(a)包含pom.xml的目录,即/some/where或(b)当前目录/foo/bar

java maven-2

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

升级到Java 1.5及更高版本有哪些危险?

我是Java的长期用户(但我是科学家而不是专业开发人员).每当新版本问世时我都会升级,但我最初只使用一小部分新功能,因为我并不总是有时间学习所有内容.

最近我了解到,除非我完全理解泛型,否则我可能会在使用时遇到严重危险(或者在这种情况下不使用它们) - 我不知道哪些危险并且不明显.(我很欣赏我被Eclipse警告但我不明白这个警告!)

具体的例子是,现在(从1.5开始)使用原始类型并且Class(而不是Class<?>Class<MyStuff>)具有严重危险的不良做法.请参阅为什么Class <?>优先于Class.

我的问题是 - 由于升级到Java 1.5(或1.6,1.7)但使用我的旧代码或编程风格,我可能遇到的其他危险是什么并且没有意识到?

java

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

为什么新文件("")不提供现有目录?

我正在使用Eclipse + Java并尝试在我当前的项目下创建文件.我曾经使用过new File("")并且不了解它的行为.

File dir = new File("");
System.out.println(dir.getAbsolutePath()+" | "+dir.isDirectory()+" | "+dir.exists());
String absolutePathname = dir.getAbsolutePath();
dir = new File(absolutePathname);
System.out.println(dir.getAbsolutePath()+" | "+dir.isDirectory()+" | "+dir.exists()); 
Run Code Online (Sandbox Code Playgroud)

结果是:

D:\workspace\jumbo-converters\jumbo-converters-compchem | false | false
D:\workspace\jumbo-converters\jumbo-converters-compchem | true | true
Run Code Online (Sandbox Code Playgroud)

为什么我有两个具有相同绝对路径名的文件,其中一个存在而且其中一个不存在?

我正在使用Java 1.6和Eclipse Helios

java eclipse

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

标签 统计

java ×6

c# ×2

extension-methods ×2

static ×2

class ×1

classpath ×1

cp1252 ×1

eclipse ×1

fonts ×1

generics ×1

maven-2 ×1

nested ×1

ocr ×1

svg ×1

tesseract ×1

utf-8 ×1

xslt ×1