首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何编辑文件上的一行?论Java

如何编辑文件上的一行?论Java
EN

Stack Overflow用户
提问于 2018-02-06 11:33:27
回答 3查看 88关注 0票数 1

我制作了一个Java程序,允许用户为一个网站创建一个.html文件。该程序向用户询问内容,内容转到一个array,然后当它完成到一个.html文件。

我想知道是否允许用户编辑已经创建的css文件。

例如,给了他们改变身体背景色的选项。我必须在css文件中找到该行所在的位置,然后更改它。有人知道我该怎么做吗?

记者:这是我第一次发帖,敬请见谅。

EN

回答 3

Stack Overflow用户

发布于 2018-02-06 11:51:44

做这件事的三种方法(可能更多):

1-使用css解析器将css文件加载到对象树(Ex:http://cssparser.sourceforge.net/)中,访问要更改的值,更改它,然后将树写回文件。

2-使用一个css模板,其中包含一些像@body_background_color@这样的专用标记。然后搜索并用相应的值替换所有标记,然后将结果写入文件。

3-使用java.io.RandomAccessFile :它允许在指定位置直接编辑文件。如果你知道在哪个字节“身体背景色”开始和结束。然后,您可以用另一个值替换该值。

票数 1
EN

Stack Overflow用户

发布于 2018-02-06 11:39:47

这是一个你可以使用的算法。您需要自己将其转换为代码:

  1. 创建一个空的临时文件
  2. 循环遍历输入文件中的所有行。
  3. 对行执行任何修改。
  4. 将行写入临时文件
  5. 完成所有行后,删除输入文件。
  6. 将临时文件移动到输入文件的前一个位置。
票数 0
EN

Stack Overflow用户

发布于 2018-02-06 11:48:20

我会使用像速度这样的模板引擎来生成html和css。css模板如下所示:

代码语言:javascript
运行
复制
...
body {
    ...
    background-color: ${bgcolor};
    ...
}
...

您将为变量bgcolor指定一个值,然后使用模板引擎生成css文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48642104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档