Вниз  Исправления исходников (1-ый пост)
- 28.07.2011 / 08:48
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Хроно, Если b у тебя массив, то так: os.write(b, 0, b.length);
К тому же, если записывать только массив байт, то DataOutputStream не нужен, пойдет и OutputStream.
Но проблема не в этом, после os.write(b); поставь os.flush();
__________________
 let live

Изменено aNNiMON (28.07 / 08:49) (всего 1 раз)
- 28.07.2011 / 08:59
MG42
  Пользователь

MG42 
Сейчас: Offline
Хроно,попробуй так, на се пашет
fc=(FileConnection) Connector.open("file:///"+s, Connector.WRITE);
fc.create();
DataOutputStream dos=fc.openDataOutputStream();
dos.write(bc);
dis.close();
dos.close();
fc.close();
- 28.07.2011 / 09:03
mrEDitor
  Пользователь

mrEDitor 
Сейчас: Offline
MG42, а зачем dis.close() ? Если не объявлено
- 28.07.2011 / 09:17
MG42
  Пользователь

MG42 
Сейчас: Offline
mrEDitor, да стереть забыл :) эт отрывок
- 28.07.2011 / 10:01
Rain
  Пользователь

Rain 
Сейчас: Offline
Хроно (28.07.2011/00:53)
Помогите кто-нибудь. Что-то у меня код fc2 = (FileConnection)Connector.open(path,2); os = fc2.openDataOutputStream(); os.write(b); fc2.close(); работает из рук вон плохо: почти всегда, чтобы записа
Хм.. А у тебя случайно этот код не повторяется несколько раз для одного и того же файла? Если да то попробуй закрывать выходной поток сразу после записи.
- 28.07.2011 / 15:11
Хроно
  Пользователь

Хроно 
Сейчас: Offline
aNNiMON, ок, спасибо, попробую. Кстати, а почему не работает
  1. while (fc2.fileSize()==0)
  2. {
  3. os.write(b);
  4. }
  Выдает ошибку illegal mode call for this operator или что-то в этом роде.
- 28.07.2011 / 17:41
kiriman
  Пользователь

kiriman 
Сейчас: Offline
Хроно (28.07.2011/15:11)
aNNiMON, ок, спасибо, попробую. Кстати, а почему не работаетwhile (fc2.fileSize()==0){os.write(b);} Выдает ошибку illegal mode call for this operator или что-то в этом роде.
Из цикла обязательно нужно выйти, а у тебя оно не выйдет :)
- 4.08.2011 / 10:14
Dmitriy
  Пользователь

Dmitriy 
Сейчас: Offline
  1. void QuickSort(int A[],L,R)
  2. {
  3.  int i,j,x,t;
  4.  while(L<R)
  5.  {
  6.   x=A[L],i=L,j=R;
  7.   while(i<=j)
  8.   {
  9.    while(A[i]<x) i++;
  10.    while(x<A[j]) aj--;
  11.    if(i<=j)
  12.    {
  13.     t=A[i],A[i]=A[j],A[j]=t,i++,j--
  14.    };
  15.   }
  16.   if(j-L>R-i)
  17.   {
  18.    QuickSort(A,i,R),R=j;
  19.   }
  20.   else
  21.   {
  22.    QuickSort(A,L,j),L=i
  23.   }
  24.  }
  25. }
Что в этом коде неправильно?
- 4.08.2011 / 10:22
kiriman
  Пользователь

kiriman 
Сейчас: Offline
Dmitriy,
  1. public static void qSort(int[] a, int low, int high) {
  2.           int i = low;
  3.           int j = high;
  4.           int x = a[(low +high)/2];
  5.           do {
  6.             while (a[i] < x)
  7.               ++i;
  8.             while (x < a[j])
  9.               --j;
  10.             if (i <= j) {
  11.               int t = a[i];
  12.               a[i] = a[j];
  13.               a[j] = t;
  14.               ++i;
  15.               --j;
  16.             }
  17.           } while (i <= j);
  18.           if (low < j)
  19.             qSort(a, low, j);
  20.           if (i < high)
  21.             qSort(a, i, high);
  22.         }

- 4.08.2011 / 10:24
ScRoLiS
  Пользователь

ScRoLiS 
Сейчас: Offline
Запятых лишних понаставлял.
__________________
 Чпок... Добрый вечер!
Наверх  Всего сообщений: 1662
Фильтровать сообщения
Поиск по теме
Файлы топика (325)