Android textView 显示: STRING_TOO_LARGE

news2024/11/17 21:32:53

默认情况下,TextView只能显示大约32K的字符。如果你的字符串超过这个限制,你将收到一个错误:“String too large”。

<string content=" ...."/>

问题点是:getResource().getString(R.string.content) 得到的是:STRING_TOO_LARGE。

如果你需要显示更大的字符串,你可以尝试以下几种解决方案:

1、分割字符串:你可以尝试将大字符串分割成几个小字符串,然后分别在TextView中显示。这可以通过在字符串的特定位置使用分隔符来实现。
例如:

String largeText = "This is a very large string...";  
String[] smallerTexts = largeText.split("...");  
for (String text : smallerTexts) {  
    TextView textView = new TextView(this);  
    textView.setText(text);  
}

2、使用WebView:

如果你需要显示非常大的文本,可能需要考虑使用WebView而不是TextView。WebView没有字符限制,但它的性能开销可能会稍大一些。

3、使用Assets:
在这里插入图片描述


    private String getTextFromAssets() {
        try {
            AssetManager assetManager = this.getResources().getAssets();
            InputStream inputStream = assetManager.open("disclaimer_content.txt");
            byte[] data = new byte[inputStream.available()];
            inputStream.read(data);
            String largeText = new String(data, "UTF-8");
            return largeText.replace("\\n", "\n");
        } catch (IOException e) {
            e.printStackTrace();
            return "";
        }

    }
    public  String getStringFromAssets() {
        String str = "";
        try {
            InputStreamReader inputStreamReader = new InputStreamReader(this.getResources().getAssets().open("disclaimer_content.txt"), "UTF-8");
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
            String line;
            StringBuilder stringBuilder = new StringBuilder();
            while ((line = bufferedReader.readLine()) != null) {
                stringBuilder.append(line);
            }
            bufferedReader.close();
            inputStreamReader.close();
            str = stringBuilder.toString().replace("\\n", "\n");
        } catch (Exception e) {
            e.printStackTrace();
        }
        return str;
    }


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1270433.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux下实现Qt程序实现开机自启动

1.原理 要想实现开机自启动&#xff0c;首先&#xff0c;QT是没有这种实现的&#xff0c;最好是靠电脑开机的启动目录启动软件&#xff0c;下面这个目录 /etc/xdg/autostart 这是操作系统中用于配置启动项的目录&#xff0c;该目录下存放着开机自启动的启动器(.desktop)文件…

如何练好太极拳?

太极拳是一种需要细心和耐心的武术&#xff0c;要练好太极拳&#xff0c;需要从以下几个方面入手&#xff1a; 找到好的师傅&#xff1a;找到一位经验丰富、技艺高超的师傅是学习太极拳的关键。师傅应该具备正确的太极拳理论、技术和经验&#xff0c;能够正确地指导学生学习太极…

珍爱生活远离“缓存之战”——大话高并发之缓存应用技巧

文章目录 &#x1f50a;博主介绍&#x1f964;本文内容一、引言二、缓存略谈三、无人能挡的命中率四、衣柜里的宝贝&#xff0c;您选对了吗&#xff1f;五、敢用淘汰法&#xff0c;它有何等勇气&#xff1f;六、哪个 “自作主张” 的哥哥藏起了咱们的宝贝&#xff1f;七、善骑千…

创新与高效共融,跨境电商ERP源码大趋势解析

跨境电商ERP源码是什么&#xff1f;它如何帮助企业实现高效管理和创新发展&#xff1f;我们将详细解释跨境电商ERP源码的概念&#xff0c;并探讨它的优势和价值。 跨境电商ERP源码是一种专门为跨境电商企业设计的软件源代码。它通过集成各种功能模块&#xff0c;包括订单管理、…

Facebook广告投放效果不佳?这些投放技巧我不允许你不知道!

众所周知&#xff0c;Facebook广告对于跨境卖家来说是非常有效的站外引流渠道&#xff0c;通过Facebook广告投放可以提高跨境卖家的产品销量和排名&#xff0c;但是有时明明广告已经投放出去了&#xff0c;却无法被受众看到&#xff0c;完全没有获得成果&#xff0c;或许你会怪…

日用品企业ERP有什么用?日用品企业ERP品牌有哪些

日用品是快消品&#xff0c;存在品牌多、出货量大、销售渠道广泛、经营数据量大、销售折扣变化多、成本容易出错等特点&#xff0c;并且不同的供应商有差异化的报价&#xff0c;另外供应商采购份额分析、库龄分析客户销售排名分析以及区域销售数据分析等各类分析报表的准确性和…

22款奔驰GLS450升级香氛负离子 淡淡的幽香

香氛负离子系统是由香氛系统和负离子发生器组成的一套配置&#xff0c;也可以单独加装香氛系统或者是负离子发生器&#xff0c;香氛的主要作用就是通过香氛外壳吸收原厂的香水再通过空调管输送到内饰中&#xff0c;而负离子的作用就是安装在空气管中通过释放电离子来打击空气中…

1.3 排序算法

1.1 冒泡排序 public class BubbleSort {public static void main(String[] args) {int[] arr {133,322,13,444,54,621,174,18,19,2};System.out.println(Arrays.toString(arr));BubSort(arr);System.out.println(Arrays.toString(arr));}//冒泡排序public static void BubSo…

投资5亿英镑!英国启动五项新量子项目

​&#xff08;图片来源&#xff1a;网络&#xff09; 近日&#xff0c;英国财政大臣Jeremy Hunt宣布&#xff0c;英国政府将投资5亿英镑(即6.26亿美元)为英国研究人员和初创企业提供人工智能项目的算力支持。 Jeremy Hunt还详细介绍了政府计划推出的五项新研究计划&#xff0c…

国内传统企业数字化转型升级,有哪些成功案例?

近年来&#xff0c;涌现出了很多使用零代码平台撬动一线业务管理效率的案例&#xff0c;比如&#xff1a; 山东滨州长山镇政府&#xff1a;仅用3小时搭建出监管平台&#xff0c;成功助力辖区300企业返岗复工&#xff1b;纳曲酒业&#xff1a;搭建市场费用和订单联动管控平台&a…

虚拟机指定开放数据库3306端口

1、查看当前防火墙状态&#xff1a; sudo firewall-cmd --state 2、开放指定端口 sudo firewall-cmd --zonepublic --add-port3306/tcp --permanent 3、重新加载防火墙配置 sudo firewall-cmd --reload 4、检查端口是否开放成功 sudo firewall-cmd --zonepublic --list-por…

如何自定义spring-boot-starter

1. 创建自定义starter 1.1 生成Maven工程 mvn archetype:generate -DarchetypeGroupIdorg.apache.maven.archetypes -DarchetypeArtifactIdmaven-archetype-quickstart -DarchetypeVersion1.4交互式输入groupId、artificatId、version&#xff0c;生成Maven工程后用IDEA打开 …

Python精讲 | 条件赋值和and-or技巧

大家好&#xff0c;欢迎来到 Crossin的编程教室 &#xff01; 在之前的 一段奇葩的1024代码 中&#xff0c;有这么一个写法&#xff1a; 看上去是一个由 and 和 or 组成的逻辑表达式。但实际的效果却相当于一个 if-else 的条件判断&#xff1a; if i % 5 4:D \n else:D 为什…

【python+Excel】读取和存储测试数据完成接口自动化测试

http_request2.py用于发起http请求 #读取多条测试用例 #1、导入requests模块 import requests #从 class_12_19.do_excel1导入read_data函数 from do_excel2 import read_data from do_excel2 import write_data from do_excel2 import count_case #定义http请求函数COOKIENon…

我在Vscode学OpenCV 图像处理一(阈值处理、形态学操作【连通性,腐蚀和膨胀,开闭运算,礼帽和黑帽,内核】)

文章目录 一、阈值处理1.1 OpenCV 提供了函数 cv2.threshold()和函数 cv2.adaptiveThreshold()&#xff0c;用于实现阈值处理1.1.1. cv2.threshold()&#xff1a;(1)在函数cv2.threshold()中&#xff0c;参数threshold_type用于指定阈值处理的方式。它有以下几种可选的阈值类型…

认识并初步使用shell脚本

目录 一、什么是Shell脚本 二、变量与运算 三、逻辑判断 四、循环 五、函数 六、中断与继续 一、什么是Shell脚本 在前面学习了Linux的基本指令&#xff0c;而shell脚本其实就是是这些命令的集合。 那么为什么需要shell脚本呢&#xff1f; 因为可以用来实现一些复杂的操…

git丢弃本地操作,强制使用线上最新代码

借鉴&#xff1a;弃用本地分支所有代码&#xff0c;获取远程分支最新代码_git获取远程最新分支_小中.的博客-CSDN博客 1.问题:git pull结果发现本地仓库比线上代码提前l两个commit。本地未进行任何操作。需要直接使用线上最新代码。ps:Author都是某同事。 2.操作&#xff1a; …

旅游网站的技术SEO:技巧与最佳实践

技术SEO在旅游网站中的作用 旅游网站都是关于用户体验和参与度的。但是&#xff0c;在开始处理这些参数之前&#xff0c;您需要努力使用户登陆您的网站。这意味着你需要让你的网站在搜索引擎结果页面&#xff08;SERP&#xff09;中排名。 一旦你在搜索引擎结果中获得曝光&am…

什么是PDM图纸管理系统?PDM图纸管理系统主要功能有哪些?

PDM (Product Data Management) 图纸管理系统 是用于管理企业内部图纸和相关文件的软件系统。它提供了一个集中存储、组织和跟踪图纸和文件的平台&#xff0c;以确保团队成员能够轻松访问、共享和更新所需的工程设计和制造数据。 彩虹PDM系统|PDM产品数据管理系统|BOM管理|工艺…

记录仿钉钉审批流(将MySQL换成Oracle)走过的坑

需求&#xff1a;实现审批流程 在Gitee上发现了一个功能还OK的项目&#xff0c;于是就clone下来了&#xff08;如下图&#xff09; 原项目用MySQL很好启动&#xff0c;B站上作者还录制了视频&#xff0c;可以去学习 这里主要记录将MySQL换成Oracle出现的问题 首先&#xff0c…