jerome_zou 2009-01-14 10:50
浏览 203
已采纳

Java 解析httpd配置文件的问题

大家好,公司要求做一个服务器,其中有些配置文件需要写个程序解析,请问这种文件应该如何解析,有什么好方法吗?没做过这种东西,不知道应该怎么处理,请大家给点思路,谢谢
以下是文件的部分内容:
class "sysadm" {
match option dhcp-client-identifier;
}
subclass "sysadm" 1:00:0d:56:b8:2d:6c;
subclass "sysadm" 1:00:90:96:b8:5f:9d;

class "cisco" {
if substring(option dhcp-client-identifier,0,6)="1:00:00:1E" ;
}

class "motorola" {
if substring(option dhcp-client-identifier,0,6)="1:00:01:E8" ;
}

subnet 192.168.6.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.6.255;
option routers 192.168.6.1;
pool {
allow members of "cisco";
range 192.168.6.100 192.168.6.200;
}
pool {
allow members of "motorola";
range 192.168.6.200 192.168.6.220;
}
pool {
allow members of "sysadm";
range 192.168.6.240 192.168.6.241;
}
}
[b]问题补充:[/b]
解析之后,需要保存到LDAP服务器里,内容如下
dn: cn=sysadm_class, dc=jm-data; dc=at
objectclass: dhcpClass
cn: sysadm_class
dhcpStatements: match 61;
dhcpSubClassesDN: cn=sysadm_subclass1, dc=jm-data; dc=at
dhcpSubClassesDN: cn=sysadm_subclass2, dc=jm-data; dc=at

dn: cn=sysadm_subclass1, dc=jm-data; dc=at
objectclass: dhcpSubClass
cn: sysadm_subclass1
dhcpClassData: 1:00:0d:56:b8:2d:6c

dn: cn=sysadm_subclass2, dc=jm-data; dc=at
objectclass: dhcpSubClass
cn: sysadm_subclass2
dhcpClassData: 1:00:0d:56:b8:2d:6c

dn: cn=cisco_class, dc=jm-data; dc=at
objectclass: dhcpClass
cn: sysadm_class
dhcpStatements: if substring(61,0,6)="1:00:00:1E" ;

dn: cn=motorola_class, dc=jm-data; dc=at
objectclass: dhcpClass
cn: sysadm_class
dhcpStatements: if substring(61,0,6)="1:00:01:E8" ;

在配置文件和LDAP数据之间应该有Java的类作为共同的一个映射
例如:
[code="java"]
public class DhcpClass{
String dhcpStatements;
String cn;
String dn;
}
[/code]

我的目的也只是想可以解析配置文件到一个类中,不求具体过程,只希望能提供一个思路即可。
谢谢
[b]问题补充:[/b]
这个配置文件其实是DHCP的配置文件,结构比较松散的,有一定的语法规则,但是手动写的话费时费力,实在不是什么好办法。

  • 写回答

5条回答 默认 最新

  • wwwghost 2009-01-14 13:44
    关注

    A dhcpd.conf GUI:
    http://www.redhat.com/archives/fedora-devel-list/2003-November/msg00127.html
    原来用C#写的,用java改写一下吧!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容