Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
REALIST07
Автор FAQ
Автор FAQ
181 / 181 / 20
Регистрация: 11.06.2010
Сообщений: 949
#1

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

16.08.2016, 12:36. Просмотров 159. Ответов 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;
    }
Нужно было вынести за метод переменную увеличения индекса и сделать статичной
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2016, 12:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Ошибка в методе именования файлов (Программирование Android):

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

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

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

Нужно чтобы введённый студент в методе in вывелся на экран как в методе out
#include<conio.h> #include<stdio.h> #include<iostream.h> #include<windows.h>...

Ошибка в методе
Здравствуйте. Как устранить данную ошибку Call to undefined method DB::n() ...

Ошибка в методе
Здравствуйте, помогите найти ошибку. Есть класс: package prog; import...

2
Pablito
16.08.2016, 12:56
  #2

Не по теме:

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

0
REALIST07
Автор FAQ
Автор FAQ
181 / 181 / 20
Регистрация: 11.06.2010
Сообщений: 949
16.08.2016, 14:07  [ТС] #3
Паблито,

Не по теме:

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

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2016, 14:07
Привет! Вот еще темы с решениями:

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

Ошибка в методе
Помогите найти ошибку Процедура ОбработкаПроверкиЗаполнения(Отказ,...

Ошибка в методе
Добрый день! Ребят, нужна помощь! Ошибка в методе, вижу, но не могу исправить. ...

Ошибка в методе
Друзья, помогите, вот задание. Не могу написать, не понимаю как. Добавьте...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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