> 文档中心 > HarmonyOS 读取文件 随机更换段子

HarmonyOS 读取文件 随机更换段子

base/profile下存放一个joke.txt文件

里面又三个笑话并且用---分割

“大爷,我现场采访您一下,您这样晨跑锻炼坚持几年了?”“姑娘别挡道!我尿急! ”“请问你是做什么工作的?”---“哦。我的工作是杀僵尸。”“嗯?可是这个世界上没有僵尸啊! ”“你以为它们是怎么没有的?”---中午去买菜,感觉都不太新鲜了。老板:早上刚到的,都新鲜的。我:这菜看着就蔫蔫的啊?!老板:从早上到现在,它以为没人要自己了,这不垂头丧气么!我。。。

布局

        

     ohos:multiple_lines="true" 允许换行

代码

package com.example.helloworld.slice;import com.example.helloworld.ResourceTable;import ohos.aafwk.ability.AbilitySlice;import ohos.aafwk.content.Intent;import ohos.agp.components.Button;import ohos.agp.components.Component;import ohos.agp.components.Text;import ohos.global.resource.NotExistException;import ohos.global.resource.Resource;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Random;public class JokeAbilitySlice extends AbilitySlice {    @Override    public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_joke); Text text = findComponentById(ResourceTable.Id_joke); Button btnReadRandom = findComponentById(ResourceTable.Id_btnReadRandom); StringBuilder sb = new StringBuilder(); try {     //返回文件的字节流     Resource resource = this.getResourceManager().getResource(ResourceTable.Profile_joke);     //字节流     BufferedReader br = new BufferedReader(new InputStreamReader(resource));     String line;     while ((line = br.readLine()) != null) {  sb.append(line);     }     br.close(); } catch (IOException e) {     e.printStackTrace(); } catch (NotExistException e) {     e.printStackTrace(); } btnReadRandom.setClickedListener(new Component.ClickedListener() {     @Override     public void onClick(Component component) {  String[] jocks = sb.toString().split("---");  Random random = new Random();  int index = random.nextInt(jocks.length);  text.setText(jocks[index]);     } });    }    @Override    public void onActive() { super.onActive();    }    @Override    public void onForeground(Intent intent) { super.onForeground(intent);    }}

 

组词