Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 28.06.2015
Сообщений: 2

Закодировать текст в base64 между тегами <ZZ> и </ZZ>

28.06.2015, 00:25. Показов 1516. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Уважаемые гуру javа прошу подсказать..

Необходимо модифицировать код для того что бы закодировать часть XML файла между тегами <ZZ> и </ZZ> в base64,
Кодирование хотелось бы осуществить с помощью java.util.Base64
Ниже привожу тот самый код который необходимо модифицировать..
остальная функциональность кода тоже должна быть сохранена..

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
public class parWorkString implements StreamTransformation {
//public class parWorkString {
 
    /* (non-Javadoc)
         * @see com.sap.aii.mapping.api.StreamTransformation#setParameter(java.util.Map)
         */
        public void setParameter(Map arg0) {
        }
 
        /* (non-Javadoc)
         * @see com.sap.aii.mapping.api.StreamTransformation#execute(java.io.InputStream, java.io.OutputStream)
         */
        public void execute(InputStream arg0, OutputStream arg1)
            throws StreamTransformationException {
            try {
                ZamenaEdi("<ZZ>","</ZZ>","<![CDATA[","]]>",arg0, arg1);
                
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    public static void ZamenaEdi(String str1,String str2,String str11,String str22,InputStream  filename,OutputStream os) throws IOException
       {
          DataInputStream F=new DataInputStream(filename); 
          DataOutputStream F1=new DataOutputStream(os);
          byte [] bPoisk1=str1.getBytes();
          byte [] bPoisk2=str2.getBytes();
          byte [] bZamena1=str11.getBytes();
          byte [] bZamena2=str22.getBytes();
          int len1=bPoisk1.length;
          int len2=bPoisk2.length;
          byte [] Buf1=new byte[len1];
          byte [] Buf2=new byte[len2];
          int j1=0, j2=0;
          try{
            while(true){
              Buf2[j2]=Buf1[j1]=F.readByte();
                            
              if (Buf1[j1]==bPoisk1[j1]){
              if (Buf1[j1]==bPoisk2[j2]) j2++; else j2=0;  
              j1++;
              if (j1==len1){
                           F1.write(bZamena1);   // Записываем строку замены                  
                           j1=0; j2=0;
                           }
                           continue;
                           }    
              if (Buf2[j2]==bPoisk2[j2]){
              if (Buf2[j2]==bPoisk1[j1]) j1++; else j1=0;
              j2++;
              if (j2==len2){
              F1.write(bZamena2);                // Записываем строку замены                  
               j1=0; j2=0;
                           }
                           continue;                     
                           }
                 
                   if (j1==0 && j2==0) F1.writeByte(Buf1[0]);
                   else if (j1>j2) F1.write(Buf1, 0, j1+1);
                        else F1.write(Buf2, 0, j2+1);
                             
              j1=j2=0;
               
              }
             }
          catch(IOException e){  
              F.close();
              F1.close();
          }
       }
/*     public static void main(String[] arg) throws IOException {
            try {
                InputStream is = new FileInputStream("c:/2.xml");
                OutputStream os = new FileOutputStream("c:/3.xml");
                new parWorkStringEdi().execute(is, os);
                os.close();
                is.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        } */ 
}

Заранее благодарю
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.06.2015, 00:25
Ответы с готовыми решениями:

Как, используя метод base64, закодировать текст?
Здравствуйте. Подскажите пожалуйста, как изменить код, чтобы можно было вместо рисунка кодировать текст. За ранние благодарен. ...

Получить текст между тегами
Здравствуйте. Необходимо получить между ббкодами code, делаю так: preg_match_all('/\(.*?)\/', $subject, $bb_code); это работает, но...

Получить текст между тегами
Надо получить текст между тегами, которые выделены полосками &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta...

1
 Аватар для we2seek
84 / 84 / 42
Регистрация: 25.01.2010
Сообщений: 386
29.06.2015, 22:30
Java
1
2
3
4
5
6
7
// encode data on your side using BASE64
byte[]   bytesEncoded = Base64.encodeBase64(str .getBytes());
System.out.println("ecncoded value is " + new String(bytesEncoded ));
 
// Decode data on other side, by processing encoded data
byte[] valueDecoded= Base64.decodeBase64(bytesEncoded );
System.out.println("Decoded value is " + new String(valueDecoded));
Добавлено через 7 минут
И еще, кто вас учил так парсить xml?
Посмотрите более элегантные способы:
  • Using DOM - Простой но медленный способ. Подходит для обработки небольших документов
  • Using SAX - Более сложный, но быстрый способ. Подходит, когда критична производительность
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.06.2015, 22:30
Помогаю со студенческими работами здесь

Получить текст между тегами
Всем привет Экспериментировал с php и потребовалось получить текст между тегами, к примеру, между: и , методом проб и ошибок пришел к...

Вытащить текст между тегами
&lt;div class=&quot;content&quot;&gt; текст &lt;p&gt;текст2&lt;p&gt; текст3 &lt;/div&gt; Можно ли вытащить текст, который расположен именно между тегами...

Получить текст между тегами
Пожалуйста помогите выбрать текст между тегами ( bbcode сообщения из БД) Вот, что получаю из БД: ...

Найти и заменить текст между тегами
Добрый день, подскажите плиииз куда копать. &lt;div&gt; ЗАМЕНИ &lt;div&gt; НЕ ТРОГАТЬ &lt;/div&gt; ЗАМЕНИ &lt;/div&gt; надо: 1) найти &quot;...

Получить текст между тегами HTML
Как получить весь текст между тегами (&lt;div class=&quot;msg&quot;&gt; Текст.... &lt;br&gt; ....магия &lt;/div&gt;)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru