您的位置:首页 > 其它

OJ实现初步尝试

2014-10-29 14:52 260 查看
平台:Windows 8,MyEclipse 2014,Java 7

编译器:MinGW下,g++

【预备 - 安装编译器】

首先,下载MinGW-get,安装编译器;

安装完编译器之后,设置安装后的bin目录到环境变量的path中;

在cmd中如果能直接输入g++执行则表明成功。

【编写处理提交代码的Servlet】

关键点在于:

先用request.getParameter获得用户提交的源代码;

将源代码写入一个cpp文件中;

采用ProcessBuilder类构建一个g++执行,参数形式为 g++ cpp -o exe;

用Process对象来获取g++的错误输出流,如果遇到编译错误,将编译错误信息输出网页并返回;

构建输出文件input和输出文件output,用redirectInput指定输入数据,用redirectOutput指定输出结果;

再用一个Process对象来控制刚编译好的exe的执行,获取执行时间等;

对比输出文件是否满足标准答案。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: