代码相似度检测

时间:2017-01-02 08:11:32
【文件属性】:

文件名称:代码相似度检测

文件大小:12KB

文件格式:RAR

更新时间:2017-01-02 08:11:32

相似度检测

简单的代码相似度检测,使用Java编写。 算法步骤: S1:剔除程序中所有注释、空行、空格 S2:剔除程序中所有变量、函数名 S3:剩下的部分(实际上主要是有 C++关键词构成的字符串)作为代码特征串 S4:两个特征串之间,使用字符串适量距离(Levenshtein Distance)计算相似度。


【文件预览】:
Compare
----.project(383B)
----src()
--------compare()
----.settings()
--------org.eclipse.jdt.core.prefs(629B)
--------org.eclipse.core.resources.prefs(88B)
----.classpath(301B)
----bin()
--------compare()

网友评论

  • File dic= new File("待检测文件的目录");String names[]={"file1.cpp","file2.cpp"};BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("结果保存的路径"+name)));注意:File f2 = new File(f1.getAbsoluteFile()+"\\"+name)要改为File f2 = new File(f1.getAbsoluteFile()+"")。终端运行:1、 sudo javac -d ./ ./*.java 2、java compare.cplusplus.CPlusPlusCompare 特此给小白解释下
  • 原来是检测C++代码的相似性的
  • 代码挺好的,稍微改一下,就可以用了,但是没有注释,看起来有点费力!!!
  • 蛮好用,谢谢分享。但需要修改一下代码 JavaCompare 类里的main方法,改一下这行语句 File f2 = new File(f1.getAbsoluteFile()+"");
  • 没有一个使用说明,还要看懂代码才行~~ 应该有个说明的
  • 还没有用,感觉还挺靠谱,稍微看了一下源码
  • 改了之后可以用的
  • 感觉整体还可以,有些地方需要自己修改
  • 整体还可以,就是代码有问题,运行后直接就把文件内容删除了
  • 修改以后很好用
  • 代码总体能够运行,需要针对使用的克隆检测对象进行修改。
  • 还可以吧啊,,,,,,,,有些地方需要自己修改
  • 貌似输出有问题
  • 可能因为字体不相同,出现了部分乱码,可能需要修改