我正在 Android Studio 中创建一个项目,我的项目文件夹中有一个文本文件,每次编译时,我都希望我的代码读取该 .txt 文件。当一切都完成后,我希望 .txt 文件在 .apk 文件中。我不是要从 SD 卡等读取。
但是每次编译时我都会收到“找不到文件异常”。在使用 eclipse 时,当您将 .txt 文件放在与项目相同的目录中时,代码可以毫无问题地找到 .txt 文件,但在 Android Studio 中,它找不到我刚刚创建的文本文件。我必须将我的 .txt 文件放在我的项目文件夹中的什么位置?
这是代码:
FileReader in = new FileReader("TEXTgreetingKeywords.txt");
final BufferedReader br = new BufferedReader(new InputStreamReader(in));
Run Code Online (Sandbox Code Playgroud)
我曾经用同样的方法在 Java 中读取文本文件。我不明白为什么它不能在 Android 上运行,因为它也使用 Java。
编辑 - - -
我使用了资产管理器,但我又遇到了同样的错误
AssetManager asset = getAssets();
try {
in = asset.open("text.txt");
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
我是否必须将目录更改为“C:\App\main\text.txt”之类的内容?
我经常遇到这个问题.当我多次使用扫描仪时,它不会从用户那里获得输入.
Scanner scan = new Scanner(System.in);
System.out.println("1---");
int try1 = scan.nextInt();
System.out.println("2---");
int try2 = scan.nextInt();
System.out.println("3---");
String try3 = scan.nextLine();
System.out.println("4---");
String try4 = scan.nextLine();
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,结果:
1 ---
12
2 ---
321
3 ---
4 ---
AA
如您所见,它跳过了第3个输入.为什么会这样?我使用新的扫描仪解决了这个问题,有时我有5-6种不同的扫描仪,看起来很复杂.另一个问题是:存在错误"资源泄漏:扫描永远不会关闭".我真的很困惑.
我正在尝试拆分数学表达式.
String number = "100+500";
String[] split = new String[3];
Run Code Online (Sandbox Code Playgroud)
我要实现
我尝试了这个,但我不知道该怎么写分裂.
split = number.split(????);
Run Code Online (Sandbox Code Playgroud) 我试图创建一个简单的彩票计划.这是一个问题:它仍然打印相同的数字.例如,我得到了33 21 8 29 21 10输出.每当生成随机数时,代码会检查是否已生成该数字,然后它会创建一个新的随机数,但之后不会再次检查.我找不到办法做到这一点.
public static void main(String[] args)
{
int[] lottery = new int[6];
int randomNum;
for (int i = 0; i < 6; i++)
{
randomNum = (int) (Math.random() * 50); //Random number created here.
for (int x = 0; x < i; x++)
{
if (lottery[i] == randomNum) // Here, code checks if same random number generated before.
{
randomNum = (int) (Math.random() * 50);//If random number is same, another number generated.
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试在mySQL控制台上创建表。
CREATE TABLE TRY (Essn int(10), Pno int(2), Hours DOUBLE(40,0));
Run Code Online (Sandbox Code Playgroud)
当我尝试向表中添加内容时:
INSERT INTO TRY ('123456789','1','32,5');
Run Code Online (Sandbox Code Playgroud)
我有一个关于语法的错误。我找不到问题。有人可以帮忙吗?
我正在尝试为我的GUI项目创建一个开/关按钮.我做了一个按钮,当我点击它时,会出现一条消息.我用ActionListener它了.当我再次点击它时,我想要消息消失.我尝试使用,jToggleButton但我不知道如何使用它.有人可以帮忙吗?
我正在尝试一个关于尝试捕获的例子,但它不能按我的意愿工作.这是代码:
public static void main(String[] args)
{
//This array's size is 5 and it has 4 Strings in it.
String[] array = new String[5];
array[0] = "Hello";
array[1] = "World";
array[2] = "try catch";
array[4] = "error";
try
{
for(int i = 0 ; i<array.length ; i++)
System.out.println("This array has: "+array[i]);
} catch (NullPointerException e)
{
System.out.println("Null!!!");
}
}
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
这个数组有:你好
这个阵列有:世界
这个数组有:try catch
这个数组有:null
这个数组有:错误
它应该进入catch区块,但事实并非如此.有任何想法吗?
我正在为 Twitter 编写程序。它将读取一条推文并在其中获取主题标签。
问题是,我无法拆分它。例如,"I love #computers so much."在这个中,我只需要获取"computers"部分。
我想通过 using 使用 split 函数,#但它会将句子分成两半,所以仍然不是解决方案。有任何想法吗?
我正在制作Android应用.我有ImageView一部分代码,我需要更改其资源.我有一个String数组
String[] names = {"chair","desk"};
我的drawable文件夹中有2个图像,其名称为"chair"和"desk".我用的时候
image.setImageResource(R.drawable.chair);
它完美地运作.但我需要将其用作:
image.setImageResource(R.drawable.names[0]);
Run Code Online (Sandbox Code Playgroud)
但Java不允许我这样做.我需要将string的值发送给该方法.有没有办法做到这一点?
我写了一个简单的for循环,它添加了从1到10的数字.这是我的代码:
for(int x = 0 ; x <10 ; x++) {
int sum =+ x;
}
System.out.println(sum);
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在循环外使用"sum"变量时,我得到一个错误"sum无法解析为变量".为什么?我只是在循环中定义了sum并且它有一个变量!我真的很困惑.