📄 i_p_lab2view.java
字号:
matr[1][i]=Integer.toString(str.indexOf(slovo.substring(i,i+1))); //System.out.print(matr[1][i]+" "); } } for (int i=2; i<razmer; i++)for (int j=0; j<slovo.length(); j++) matr[i][j]=" "; } private void matr_head_obr() { if (!(jTextField1.getText().equals(""))&&!(jTextField3.getText().equals(""))){slovo=jTextField1.getText(); razmer=Integer.parseInt(jTextField3.getText()); matr=new String [razmer][slovo.length()]; str="абвгдежзиклмнопрстуфхцчшщъыьэюя., "; String m_s[][]; m_s= new String [2][slovo.length()]; for (int i=0; i<slovo.length(); i++) { m_s[0][i]=slovo.substring(i,i+1); m_s[1][i]=Integer.toString(str.indexOf(slovo.substring(i,i+1)));} //sort for (int l=0; l<(slovo.length()-1); l++) for (int l1=l; l1<slovo.length(); l1++) if(Integer.parseInt(m_s[1][l])>Integer.parseInt(m_s[1][l1])) for(int k=0;k<2;k++) {String pr=""; pr=m_s[k][l1]; m_s[k][l1]=m_s[k][l];; m_s[k][l]=pr; } //создание матрицы for (int i=0; i<slovo.length(); i++) {matr[0][i]=m_s[0][i]; // System.out.print(matr[0][i]+" "); matr[1][i]=m_s[1][i]; //System.out.print(matr[1][i]+" "); } } for (int i=2; i<razmer; i++)for (int j=0; j<slovo.length(); j++) matr[i][j]=""; } private void matr_sort() { //сортировка матрицы for (int l=0; l<(slovo.length()-1); l++) for (int l1=l; l1<slovo.length(); l1++) if(Integer.parseInt(matr[1][l])>Integer.parseInt(matr[1][l1])) for(int k=0;k<razmer;k++) {String pr=""; pr=matr[k][l1]; matr[k][l1]=matr[k][l];; matr[k][l]=pr; } } private void matr_sort_obr() { //сортировка матрицы for (int l=0; l<(slovo.length()); l++) for (int l1=0; l1<slovo.length(); l1++) if(slovo.substring(l, l+1).equals(matr[0][l1])) for(int k=0;k<razmer;k++) {String pr=""; pr=matr[k][l1]; matr[k][l1]=matr[k][l];; matr[k][l]=pr; } } private void matr_show() { //вывод матрицы на экран System.out.print("\n"); for (int i=0; i<razmer; i++) {for (int j=0; j<slovo.length(); j++) { System.out.print(matr[i][j]+" "); } System.out.print("\n"); } } private void shifr() { for (int i1=2; i1<razmer; i1++) for (int j1=0; j1<slovo.length(); j1++) rezult=rezult+matr[i1][j1]; System.out.print("Результат шифрования"+"\n"); System.out.print("\n"); System.out.print(rezult); } //////////////////////открытие файла////////////////////////////////private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed// TODO add your handling code here: //выбор файла JFileChooser chooser = new JFileChooser(); int returnVal = chooser.showOpenDialog(chooser); if(returnVal == JFileChooser.APPROVE_OPTION) { jTextField2.setText(chooser.getSelectedFile().getName()); s=chooser.getSelectedFile().getAbsolutePath();} i=0; matr_head(); //чтение файлаst=new String[i];strk=""; try { Scanner in = new Scanner(new File(s)); while (in.hasNext()) {strk=strk+in.nextLine(); // System.out.println(strk); }} catch ( Exception ex ) {ex.printStackTrace();} System.out.print("\n"); //заполнение матрицы//GEN-LAST:event_jButton1ActionPerformed} ///////////////////////расшифрвание//////////////////////////////////private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed// TODO add your handling code here: //System.out.println(jTextField2.getText()); rezult=""; int k3=0; while (k3<strk.length()) { matr_head_obr(); for (int i=2; i<razmer;i++) { if (k3>=strk.length()) break; for (int j=0; j<slovo.length();j++) { matr[i][j]=strk.substring(k3, k3+1); k3++; if (k3>=strk.length()) break;}} matr_show(); matr_sort_obr(); matr_show(); if (jRadioButton1.getModel().isSelected()) { for (int i1=2; i1<razmer; i1++) {if (i1-(i1/2)*2==0) for(int j1=0; j1<slovo.length(); j1++) rezult=rezult+matr[i1][j1]; else for(int j1=slovo.length()-1; j1>=0; j1--) rezult=rezult+matr[i1][j1]; } System.out.println(rezult+"\n"); } if (jRadioButton3.getModel().isSelected()) { int i=2, j=0, b=0,k=0; int ip=razmer-1; int jp=slovo.length()-1; int in=2; int jn=0; while (k<(razmer-2)*slovo.length()) { for (j=jn; j<jp; j++) { rezult=rezult+matr[i][j]; k++; if (k==(razmer-2)*slovo.length()) break; } if (k==(razmer-2)*slovo.length()) break; for (i=in; i<ip; i++) { rezult=rezult+matr[i][j]; k++; if (k==(razmer-2)*slovo.length()) break; } if (k==(razmer-2)*slovo.length()) break; for (j=jp; j>jn; j--) { rezult=rezult+matr[i][j]; k++; if (k==(razmer-2)*slovo.length()) break; } if (k==(razmer-2)*slovo.length()) break; for (i=ip; i>in; i--) { rezult=rezult+matr[i][j]; k++; if (k==(razmer-2)*slovo.length()) break; } if (k==(razmer-2)*slovo.length()) break; i++; jp--; in++; ip--; jn++; } System.out.println(rezult+"\n"); } if (jRadioButton2.getModel().isSelected()) { int k=0; int i=2, j=0; int ip=razmer-1; int jp=slovo.length()-1; rezult=rezult+matr[i][j]; while (k<(razmer-2)*slovo.length()-1) { if (i==ip) { j++; k++; rezult=rezult+matr[i][j]; } if ((i==ip)&&(j==jp)) break; if ((j==0)&&(!(i==ip))) { i++; k++; rezult=rezult+matr[i][j]; } if ((i==ip)&&(j==jp)) break; if (j==jp) { i++; k++; rezult=rezult+matr[i][j]; } if ((i==ip)&&(j==jp)) break; if ((i==2)&&(!(j==jp))) {j++; k++; rezult=rezult+matr[i][j]; } if ((i==ip)&&(j==jp)) break; if ((i+j)-((i+j)/2)*2==0) {i++; j--; k++; rezult=rezult+matr[i][j]; } else {i--; j++; k++; rezult=rezult+matr[i][j]; } } // rezult=rezult.substring(1, rezult.length()); System.out.println(rezult+"\n"); } } try { WriteFile(s.substring(0, s.length()-4)+"2.txt", rezult); } catch (IOException ex) { Logger.getLogger(I_p_lab2View.class.getName()).log(Level.SEVERE, null, ex); }}//GEN-LAST:event_jButton3ActionPerformed/////////////////////////шифрование/////////////////////////////////private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed// TODO add your handling code here: //заполнение матрицы //заполнение матрицы змейкой if (jRadioButton1.getModel().isSelected()){ int k=2,j=0,b=0; for (int i=0; i<strk.length(); i++) { if (i==strk.length()) break; matr[k][j]=strk.substring(i, i+1); System.out.print(strk.substring(i, i+1));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -