我一直在通过 Netbeans 使用 CodeNameOne 设计应用程序并遇到了一些问题,特别是“找不到符号”编译错误。进一步研究后,我发现这是由于 CNO 不支持某些库/misc。
我想知道是否有其他方法可以使用以下库/执行任务:
(从文件中读取)
导入java.io.文件;
符号:类文件
位置:包 java.io
(抛出 FileNotFoundException) 导入 java.io.FileNotFoundException; 符号:类 FileNotFoundException 位置:包 java.io
(读取数据) 导入 java.util.Scanner; 符号:类扫描器 位置:包java.util
(基于数学的函数) 符号:方法 pow(double,int) 地点:数学课
(创建格式化字符串) 符号:方法格式(字符串) 位置:类字符串
最佳答案
我不能肯定您提供的所有示例,但您应该考虑查看 CN1 API Javadocs有关如何“按照他们的方式”进行操作的信息。
例如,对于 File
,Javadocs说:
The main reason java.io.File & java.io.FileInputStream weren't supported directly has a lot to do with the richness of those two API's. They effectively allow saving a file anywhere, however mobile devices are far more restrictive and don't allow apps to see/modify files that are owned by other apps.
所以,这个问题的答案是,使用他们的。同样,搜索 CN1 Javadocs 以了解使用其 API 执行所需操作的适当方法。
您还可以引用开发者指南,例如大多数基于文件的操作应该通过 Storage
或 FileSystemStorage
执行,这两者都涵盖了 here .您应该非常小心使用 java.io.File
的代码,因为这可能依赖于桌面特定行为。
FileNotFoundException
可以替换为 IOException
(它是 IOException
的子类)。
没有直接等同于 Scanner
的工具,但有用于 JSON、XML、CSV 和 Properties 的内置解析器。
一些数学函数在 MathUtil 中其中包括 Math.pow(double, double)
。
没有与 Java SE 的 format()
方法等效的方法。您将需要连接字符串。
请注意,如果您将一些代码作为问题发布,我们有时可以帮助解决代号 One 的等效问题。
关于java - codenameone 中的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36681724/