var filename = "blesson.txt"
var wallpaperDirectory = File("/sdcard/Wallpaper")
wallpaperDirectory.mkdirs()
val outputFile = File(wallpaperDirectory, filename)
val fos = FileOutputStream(outputFile)
I am trying to make a new directory on an Android device using Kotlin, but the function mkdirs()
doesn't work.
var filename = "blesson.txt"
var wallpaperDirectory = File(Environment.getExternalStorageDirectory().absolutePath)//("/sdcard/Wallpaper")
wall
val outputFile = File(wallpaperDirectory, filename)
val fos = FileOutputStream(outputFile)
I have tried this also, it is not making a new directory Any help is welcome
Select layouts , right-click and select New → Folder → Res Folder. This resource folder will represent a “feature category” that you want. You can easily create any type of file/folder in Android Studio.
context. getExternalMediaDirs() will return you all the folders from media folder and when you call that it will create a folder with your app's package name all you have to do is identify packagename and get your folder path. This function will return you full path to your folder inside media folder.
This works perfectly on Kotlin
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var filename = "blesson.txt"
// create a File object for the parent directory
val wallpaperDirectory = File("/sdcard/Wallpaper/")
// have the object build the directory structure, if needed.
wallpaperDirectory.mkdirs()
// create a File object for the output file
val outputFile = File(wallpaperDirectory, filename)
// now attach the OutputStream to the file object, instead of a String representation
try {
val fos = FileOutputStream(outputFile)
} catch (e: FileNotFoundException) {
e.printStackTrace()
}
}
}
You can also use also
to do this:
File("path_to_file").also {
file -> file.parentFile.mkdirs()
}.writeBytes(bytes)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With