Android 动态修改 html 文件的字符串

Posted 夏至的稻穗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 动态修改 html 文件的字符串相关的知识,希望对你有一定的参考价值。

有时候,需要动态修改 html 文件的字符串,如多语言,或者一些老版本的兼容。

思路比较简单,就是把 html 的字符串读出来,替换某个字符串就好了。
需要注意的时候,在读的时候,需要保留 html 的换行br,避免格式不对的问题,简单的代码如下:

    private fun replaceHtmlMsg(htmlFile: File) {
            val fr = FileReader(htmlFile)
            val br = BufferedReader(fr)
            val sb = StringBuffer()
            var eachLine = br.readLine()
            while (eachLine != null) {
 
                if (eachLine.contains("old")) {
                    eachLine = eachLine.replace("old", "new")
                }
                sb.append(eachLine)
                sb.append("\\n")
                eachLine = br.readLine()
            }

            FileUtil.writeTxt(sb.toString(), htmlFile)
    }
    fun writeTxt(msg:String,file:File) :Boolean{
        var fos :FileOutputStream? = null
        return try {
            fos = FileOutputStream(file)
            fos.write(msg.toByteArray())
            fos.flush()
            true
        } catch (e: Exception) {
            RLog.i(TAG, "writeTxt fail $e")
            false
        }finally {
            closeIo(fos)
        }
    }

以上是关于Android 动态修改 html 文件的字符串的主要内容,如果未能解决你的问题,请参考以下文章

Android 安装包优化使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库到 Android Studio 工程 | 配置 build.gradle 构建脚本 )(代

Android 逆向修改 Android 系统文件 ( ro 只读文件系统 | 系统文件格式 | rootfs | tmpfs | devpts | sysfs |proc | /system )(代

Android 逆向修改 Android 系统文件 ( ro 只读文件系统 | 系统文件格式 | rootfs | tmpfs | devpts | sysfs |proc | /system )(代

Android 逆向Android 中常用的 so 动态库 ( /system/lib/libc.so 动态库 | libc++.so 动态库 | libstdc++.so 动态库 )(代

Android 逆向Android 中常用的 so 动态库 ( /system/lib/libc.so 动态库 | libc++.so 动态库 | libstdc++.so 动态库 )(代

Android 逆向修改运行中的 Android 进程的内存数据 ( 运行环境搭建 Android 模拟器安装 | 拷贝 Android 平台可执行文件和动态库到 /data/system )(代码片