Как добавить возрастающее число в конец повторяющегося имени файла в Kotlin?Android

Форум для тех, кто программирует под Android
Anonymous
Как добавить возрастающее число в конец повторяющегося имени файла в Kotlin?

Сообщение Anonymous »

Я пытаюсь разработать функцию, которая добавляет номер к концу файла, который имеет то же имя, что и другой файл в Котлине. Номер будет увеличиваться для каждого файла с одинаковым именем. Это важно, потому что все файлы с одинаковым именем будут автоматически удалены, за исключением первого с этим именем. < /P>
Я разработал функцию, которая частично достигает того, что я хочу, но не Работайте более двух файлов. < /p>
Вот код для этой функции < /p>
// In The Main Activity Of A Jetpack Compose Project In Android Studio

// Directory
val directory = File(this.filesDir, "Directory")
directory.mkdir()

// List Of Files In Directory
var fileList by mutableStateOf(directory.listFiles()?.toList() ?: listOf())

// File Name
val fileName = "File Name"

// Number That Goes On The End Of Duplicate Files
val counter by remember{mutableStateOf(1)}

// Function To Create File
fun createFile() {

// Conditional That Adds Number To File Name
val _fileName = "${fileName}${if (directory.any { it.name == fileName }) " ${counter + 1}" else ""}"

// File
val file = File(directory, fileName)

// Recompose File List
fileList = directory.listFiles()?.toList() ?: listOf()
}

// Layout
Column(
modifier.fillMaxSize
) {

// Button To Add File
Button(onClick{ createFile }) { Text(text = "Add File") }

// Displayed List Of Files
fileList.forEach{ file ->

// Displayed File Name
Text(text = file.name)

}
}

< /code>
Любой файл после того, как второй автоматически удален. Как мне это исправить? Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ame-in-kot

Вернуться в «Android»