如何编辑文件中的单行?在Java上

时间:2018-02-06 11:33:27

标签: java html css

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

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

例如,为他们提供更改正文背景颜色的选项。我必须在css文件中找到该位置的行,然后进行更改。任何人都知道我该怎么做?

P.S。:这是我第一次发帖,请善待。

3 个答案:

答案 0 :(得分:1)

三种方式(可能更多):

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

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

3-使用java.io.RandomAccessFile:它允许直接编辑指定位置的文件。如果你知道"身体背景颜色"开始和结束。然后你可以用另一个

替换这个值

答案 1 :(得分:0)

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

  1. 创建一个空的临时文件
  2. 遍历所有的行 输入文件
  3. 对该行进行任何修改
  4. 将行写入临时文件
  5. 完成所有行后,删除输入文件
  6. 将临时文件移动到输入文件的上一个位置

答案 2 :(得分:0)

我会使用像velocity这样的模板引擎来生成html和css。 css模板看起来像:

...
body {
    ...
    background-color: ${bgcolor};
    ...
}
...

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