Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
REALIST07
Автор FAQ
Автор FAQ
175 / 175 / 13
Регистрация: 11.06.2010
Сообщений: 932
#1

Ошибка в методе именования файлов - Программирование Android

16.08.2016, 12:36. Просмотров 128. Ответов 2
Метки нет (Все метки)

Есть такой метод:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 public static String checkEqualName(String type,String name) {
        String path = getMediaFolder(type);
        File file = new File(path+name);
        int i = 1;
        String result = name;
        int start = name.lastIndexOf(".");
        int extCount = name.length() - start ;
        boolean exist = false;
        String ext = String.copyValueOf(name.toCharArray(),start,extCount);
        String nameWithoutExt = String.copyValueOf(name.toCharArray(),0,name.length() - extCount);
        while (file.exists()) {
            result = nameWithoutExt+"("+String.valueOf(i)+")";
            file = new File(path+result);
            i++;
            exist = true;
        }
 
        if (exist)
            return result+ext;
        else
            return result;
    }
Должно быть так: File.txt,File(1).txt,File(2).txt...
Но сейчас вот так: File.txt,File(1).txt и все и все остальные данные записываются в File(1).txt
Я уже не соображаю что-то...хелп

Добавлено через 10 часов 47 минут
Свою проблему сам решил:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 private static  int index = 1;
    public static String checkEqualName2(String type,String name) {
        String path = getMediaFolder(type);
        File file = new File(path+name);
        String result = name;
        int start = name.lastIndexOf(".");
        int extCount = name.length() - start ;
        boolean exist = false;
        String ext = String.copyValueOf(name.toCharArray(),start,extCount);
        String nameWithoutExt = String.copyValueOf(name.toCharArray(),0,name.length() - extCount);
        while (file.exists()) {
            result = nameWithoutExt+"("+String.valueOf(index)+")";
            file = new File(path+result);
            index++;
            exist = true;
        }
 
        if (exist)
            return result+ext;
        else
            return result;
    }
Нужно было вынести за метод переменную увеличения индекса и сделать статичной
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2016, 12:36     Ошибка в методе именования файлов
Посмотрите здесь:

Ошибка в методе onBackPressed - Программирование Android
почему красным выделяется? подскажите кому не трудно :) p.s для остановки музыки после закрытия приложения Добавлено через 8...

Нужно ли пользоваться префиксами m и s для именования переменных или это устарело? - Программирование Android
Добрый вечер всем, подскажите пожалуйста, используете ли вы префиксы m и s для переменных/полей класса? Дело в том что у андроида...

Программа вылетает в методе OnCreate - Программирование Android
Программа вылетает со следующей ошибкой: 586-3586/spsoft.myapplication E/AndroidRuntime: FATAL EXCEPTION: main ...

Как вызвать другой результат try-catch в методе? - Программирование Android
Как вызвать другой результат try-catch в методе doInBackground? ПС: Приложение для андроид, есть типо такого @Override ...

Не понятно как работает два return в одном методе - Программирование Android
Имеется вот такой код. Он работает. Но мне не понятно как, т.к. дальнейшие действия зависят от того, что вернет мне этот метод. В данном...

Как толкнуть одной фигурой другую в методе onDraw - Программирование Android
Здравствуйте.Я на этом форуме новенький.Это мое первое сообщение,так что если формат формулировки не совсем правильный,попрошу меня...

Как правильно присвоить переменным данные для использования с другом методе? - Программирование Android
Привет всем! Есть такая проблема... есть push уведомления, и когда приходит уведомление их нужно добавить в массив для показа в...

Ошибка в методе - 1С
Помогите найти ошибку Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) ПараметрыОпции=Новый...

Ошибка в методе - C#
Добрый день уважаемые форумчани! Дописываю дипломный проект, программа проверяет и копирует нужные файлы с сервера на клиентский...

Ошибка в методе - JavaFX
Здравствуйте, помогите найти ошибку. Есть класс: package prog; import javax.swing.JFrame; public class NewClass...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
16.08.2016, 12:56
  #2

Не по теме:

это было настолько очевидно, что не только я (мне так кажется) не стал ничего писать по этому поводу, а решил подождать пока проблема сама решится

REALIST07
Автор FAQ
Автор FAQ
175 / 175 / 13
Регистрация: 11.06.2010
Сообщений: 932
16.08.2016, 14:07  [ТС]     Ошибка в методе именования файлов #3
Паблито,

Не по теме:

ок, в следующий раз напишите очевидность и получите +1 if you like

Yandex
Объявления
16.08.2016, 14:07     Ошибка в методе именования файлов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru