我制作了一些类来读取Java的KML文件(使用SAX)。 我对其进行了测试,并且效果很好。 然后,我做了我的jar,并将其导入到android项目中。 但是,当我尝试读取SAME kML时,没有任何结果。 解析器返回我空列表(矢量)

那就是我用Java制作的方式:

Vector<Point> listPoints = new Vector<Point>();
String src = "C:/Users/A556520/Documents/Proyectos/PolygonDoubleKML/res/Glorias_def.kml";       
InputStream inputStream =new FileInputStream(src);      
ReaderKML kmlreader = new ReaderKML(inputStream);
time_start = System.currentTimeMillis();
listPoints = kmlreader.parseKML();
time_end = System.currentTimeMillis();
System.out.println("Tiempo de ejecución: "+ (time_end-time_start)/1000f);

然后输出正确-> Tiempo deejecución:0.073 || 积分= 401

然后,正如我所说的,我将jar导入到Android项目中,这就是我的工作方式:

Vector<Point> lista;
Polygon glorias;
ReaderKML kmlReader;
String pathKML = "~res/raw/glorias_def.kml";
InputStream input_kml;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
input_kml = getResources().openRawResource(R.raw.glorias_def);
kmlReader = new ReaderKML(input_kml);
lista = kmlReader.parseKML();       
}

protected void onStart() {
    super.onStart();        
    tv_1.setText("Npoints = "+Integer.toString(lista.size()));
}

我在Npoints = 0得到的是Npoints = 0 ,当它必须为Npoints = 401 ...我不明白这是什么错误... kml文件位于Npoints = 401 / raw内,与我相同用于在Java中进行测试。

  ask by Shudy translate from so

本文未有回复,本站智能推荐:

1回复

SAX解析器上的文档意外结束(怀疑输入流多次使用)

我在线上的文档意外结束: 但是,我有一些线索,我认为我的错误可能与SAX分析器无关。 这是我的简化代码片段。 3个ArrayList获取器指向导致问题的行。 它们都使用相同的InputStream。 所有方法几乎都是相同的,我确信它们可以正常工作……只是分开。 只有第一个
1回复

使用Java修改xml版本

将xml文件的版本从1.0更改为1.1的最佳方法是什么? 我需要使用dom解析它们,但是如果不将xml版本设置为1.1,就无法做到这一点,因为某些文件包含一些无效字符,而使用xml 1.0则无法接受。 我不知道如何构建这些文件,但是无论如何我还是得到了一些。 这些文件相当大,因此我
3回复

Java应用程序在Eclipse上工作正常,但在部署为可运行的jar后它无法正常工作

就像瓷砖说的那样,我的Java应用程序不起作用,因为它在Eclipse上开发时工作正常。 我完成了在Eclipse上构建和测试我的应用程序。 它按照我的预期正常工作。 我需要将其部署为可运行的jar,以便我的客户端无法在其系统上使用它。 我通过在Eclipse上导出它使它成为一个可运
2回复

在Java中,为什么class.getResource(“ / path / to / res”); 将文件复制到系统时,无法在可运行的jar中工作?

我一直在从事一个项目,该项目要求用户在首次运行时“安装”该程序。 此安装需要将所有资源从“ res”文件夹复制到用户硬盘驱动器上的专用目录。 我有下面的代码块运行良好,但是当我从eclipse中导出可运行的jar时,我收到了一个堆栈跟踪,指示InputStream为null。 安装循环将数
1回复

Eclipse代码运行良好,Jar不能

我在这里是新手,对Java也有点新手。 我遇到了一个问题。 我有一个非常简单的程序,尝试创建png并将其保存在用户选择的文件夹中。 byteimage是一个私有字节[]: 在浏览按钮的动作侦听器内部调用setPath() 字节转png方法如下所示: 此方法的调用方式
2回复

运行.jar时获取getResourceAsStream文件路径

我的代码: 当playerhit.mp3文件与运行它的MP3.class在同一个包中时,此代码可以正常工作。我将其作为.jar运行。 如果我将文件路径更改为类似/src/data/audio/playerhit.mp3它就不再起作用了。 在以.jar身份运行时,是否仍然可以访问不同于
1回复

使用jarsplice创建可运行的jar后找不到文件

因此,这就是CMD在使用JarSplice将我的LWJGL编译为可运行的Jar之后告诉我的。 我追溯了问题,它与使用java.io.File而不是InputStream() ,但是问题是,我正在使用InputStream() 。 这是从我的Image类。 这是我正在尝试从菜
1回复

在运行时如何修改Jar文件中的文本文件? [重复]

这个问题已经在这里有了答案: 修改jar中的文件 12个答案 正如问题所言,那怎么可能? 这个文件是我的proyect结构(我正在使用eclipse)。 当导出为Jar时,我可以使用以下代码通过控制台访问和打印“ root.ini”内容,但是,如何在运
3回复

如何使用批处理文件导出Java项目

我要执行的操作是将该项目导出到Jar文件中,并且我需要像这样导入此批处理文件:InputStream PROGRAM = Main.class.getClassLoader()。getResourceAsStream(“ FILES / PROGRAM.bat”); 因此它可以在任何其他计算
2回复

Java .class.getResourceAsStream()

据我所知, Class.getResourceAsStream()获取一个指向.jar文件中的文件的InputStream吗? 如果我对此有误,请纠正我。 有什么方法可以将外部文件临时“加载”到.jar中,以便getResourceAsStream()方法可以检索它? 例如,将C: