Android Studio解决未识别Java文件(出现红J)问题

在做一个即时通讯的小demo,需要用到基于XMPP的aSmack源码,在main中新建一个asmack文件夹,然后把asmack解压后的代码包复制粘贴到这个目录下,就出现了红J的问题,正常情况下应该是显示蓝色的C标识。



这个问题困惑了很久,网上说的clean、build都不管用,还有在工程结构里moudle->source加入java文件,Android Studio早期版本可以正常解决,后来的新版本会发现根本找不到这个目录,经过一番折腾,终于找到如下解决方法:


切换到project视图下,找到app里的build.gradle,在android结构里插入如下代码:


sourceSets {
    main {
        java.srcDirs = ['src/main/java', 'src/main/新建的文件夹名']
    }
}
 
例如我的就是:
sourceSets {
    main {
        java.srcDirs = ['src/main/java', 'src/main/asmack']
    }
}
然后rebuild project,问题得到解决




Android Studio中,要识别并显示txt文件的内容,通常需要完成以下几个步骤: 1. 将txt文件放置在正确的位置:在Android项目中,通常将资源文件放置在`res/raw`目录下。如果文件不存在,你需要手动创建`raw`文件夹。 2. 读取txt文件:在代码中,你可以通过`InputStream`来读取`raw`文件夹中的txt文件。使用`Resources`类提供的`openRawResource()`方法来获取一个`InputStream`,然后再将这个输入流转换为字符串。 3. 显示txt文件内容:读取到字符串之后,可以通过`TextView`等UI组件将内容显示在界面上。 以下是一个简单的示例代码: ```java // 在Activity中读取并显示txt文件的内容 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取TextView组件 TextView textView = findViewById(R.id.textView); // 读取raw目录下的文件内容 String textContent = readRawFileText(R.raw.sample_text); // 显示到界面上 textView.setText(textContent); } private String readRawFileText(int resId) { InputStream inputStream = getResources().openRawResource(resId); int ch; StringBuilder sb = new StringBuilder(); try { while ((ch = inputStream.read()) != -1) { sb.append((char) ch); } } catch (IOException e) { e.printStackTrace(); } return sb.toString(); } ``` 在上述代码中,`sample_text.txt`是存放在`res/raw`目录下的txt文件,`readRawFileText`方法读取这个文件并返回一个字符串,这个字符串最后被设置到`TextView`上。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值