Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我的代码中有什么可以识别为病毒?_Java - Fatal编程技术网

Java 我的代码中有什么可以识别为病毒?

Java 我的代码中有什么可以识别为病毒?,java,Java,当我完成家庭任务时,出现错误“找不到或加载主类”。 我花了将近20分钟完全不理解。原因是“卡巴斯基反病毒”,它阻止了我的MyClass.class。 这是代码,任何人都知道,卡巴斯基可以识别为病毒的代码是什么? import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.*; public clas

当我完成家庭任务时,出现错误“找不到或加载主类”。 我花了将近20分钟完全不理解。原因是“卡巴斯基反病毒”,它阻止了我的MyClass.class。
这是代码,任何人都知道,卡巴斯基可以识别为病毒的代码是什么?

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;

public class CryptoUtil extends JFrame{
    private String keyWord;
    private JFileChooser inputFileChooser = new JFileChooser();
    private JButton openFileChooser = new JButton("Выбрать файл");
    private JTextField inputKeyWord = new JTextField();
    private JButton operate = new JButton("Выполнить");
    private File inputFile;
    private File encode;
    private File decode;
    private String inputData;


public CryptoUtil(){
    initFrame();
}

public void initFrame(){
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setTitle("Шифратор/дешифратор XOR");
    this.setLayout(new GridLayout(3, 1));
    this.setSize(300, 100);
    operate.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            try {
                operate();
                Desktop.getDesktop().open(new File(encode.getParent()));
            } catch (IOException e1) {
                e1.printStackTrace();
            }

        }
    });
    openFileChooser.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            inputFileChooser.showOpenDialog(CryptoUtil.this);
        }
    });
    this.add(openFileChooser);
    this.add(inputKeyWord);
    this.add(operate);
}

public void operate() throws IOException {
    keyWord = inputKeyWord.getText();
    inputFile = inputFileChooser.getSelectedFile();
    encode = new File(inputFile.getParent() + "//encode.txt");
    decode = new File(inputFile.getParent() + "//decode.txt");
    BufferedReader br = new BufferedReader(new FileReader(inputFile));
    StringBuilder sb = new StringBuilder();
    String line = br.readLine();
    while (line != null) {
        sb.append(line);
        sb.append(System.lineSeparator());
        line = br.readLine();
    }
    inputData = sb.toString();
    br.close();
    PrintWriter writerEn = new PrintWriter(encode, "UTF-8");
    writerEn.print(encrypt(inputData, keyWord));
    writerEn.close();
    PrintWriter writerDe = new PrintWriter(decode, "UTF-8");
    writerDe.print(decrypt(encrypt(inputData, keyWord), keyWord));
    writerDe.close();
}


public byte[] encrypt(String text, String keyWord){
    byte[] arr = text.getBytes();
    byte[] keyArr = keyWord.getBytes();
    byte[] result = new byte[arr.length];
    for(int i = 0; i < arr.length; i++){
        result[i] = (byte) (arr[i] ^ keyArr[i % keyArr.length]);
    }
    return result;
}

public String decrypt(byte[] text, String keyWord){
    byte[] result  = new byte[text.length];
    byte[] keyArr = keyWord.getBytes();
    for(int i = 0; i < text.length;i++){
        result[i] = (byte) (text[i] ^ keyArr[i% keyArr.length]);
    }
    return new String(result);
}

public static void main(String[] args) {
    new CryptoUtil().setVisible(true);
}
import javax.swing.*;
导入java.awt.*;
导入java.awt.event.ActionEvent;
导入java.awt.event.ActionListener;
导入java.io.*;
公共类CryptoUtil扩展JFrame{
私有字符串关键字;
私有JFileChooser inputFileChooser=新JFileChooser();
私有JButton openFileChooser=新JButton(“bщаааааафа”);
私有JTextField inputKeyWord=新JTextField();
专用按钮操作=新按钮(“bыыыцццццццццц109;
私有文件输入文件;
私有文件编码;
私有文件解码;
私有字符串输入数据;
公共加密工具(){
initFrame();
}
公共void initFrame(){
此.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
本集标题(“бббббббб/ббббббб107;
这个.setLayout(新的GridLayout(3,1));
这个。设置大小(300100);
operate.addActionListener(新建ActionListener()){
@凌驾
已执行的公共无效操作(操作事件e){
试一试{
操作();
打开(新文件(encode.getParent());
}捕获(IOE1异常){
e1.printStackTrace();
}
}
});
openFileChooser.addActionListener(新ActionListener(){
@凌驾
已执行的公共无效操作(操作事件e){
inputFileChooser.showOpenDialog(CryptoUtil.this);
}
});
添加(openFileChooser);
this.add(inputKeyWord);
这个。添加(操作);
}
public void operate()引发IOException{
关键字=inputKeyWord.getText();
inputFile=inputFileChooser.getSelectedFile();
encode=新文件(inputFile.getParent()+“//encode.txt”);
decode=新文件(inputFile.getParent()+“//decode.txt”);
BufferedReader br=新的BufferedReader(新文件读取器(inputFile));
StringBuilder sb=新的StringBuilder();
String line=br.readLine();
while(行!=null){
某人附加(行);
sb.append(System.lineSeparator());
line=br.readLine();
}
inputData=sb.toString();
br.close();
PrintWriter writerEn=新的PrintWriter(编码为“UTF-8”);
打印(加密(输入数据,关键字));
writerEn.close();
PrintWriter writerDe=新的PrintWriter(解码为“UTF-8”);
打印(解密(加密(输入数据,关键字),关键字));
writerd.close();
}
公共字节[]加密(字符串文本、字符串关键字){
字节[]arr=text.getBytes();
byte[]keyArr=关键字.getBytes();
字节[]结果=新字节[arr.length];
对于(int i=0;i

}

您可以将您的文件添加为卡巴斯基防病毒软件中的受信任文件,我也遇到过同样的情况,它不一定是病毒

你是否考虑过java可执行文件(<代码> java .exe < /C> >)被感染的可能性,或者说你的卡巴斯基不想让java运行?反病毒经常认为未知源的可执行文件是危险的,但是另一个程序编译和执行得很好,它可能被认为是“可疑行为”。当一个程序(如javac.exe)创建其他可执行文件时。许多年前,我的Delphi编译器(在编写.exe文件时)在A/V中遇到了这种问题。我不认为在.class文件中也会发生这种情况,但你们永远不会知道。