Tag: 文件

listFiles(),但忽略Android中的一个子目录

我需要得到一个文件列表,但忽略一个特定的子目录。 例如这里是一个示例结构。 Content ->1 –>file_a.mp4 –>file_b.mp4 ->2 –>file_c.mp4 –>file_d.mp4 ->Bonus –>1 —>file_e.mp4 —>file_f.mp4 我需要能够获得排除奖励目录的文件/目录列表。 我还需要单独列出奖励目录的文件,但我认为这可以通过使用常规方法轻松解决。 如何执行列表文件,但忽略目录? 这是我的示例代码将返回一切 final List boxsets = getCloudBoxsetsWithTrackData(context); final File[] boxsetFiles = dir.listFiles(); if (boxsetFiles != null) { for (File subDir : boxsetFiles) { if (subDir.isDirectory()) { for (Boxset boxset : boxsets) { if (subDir.getName().equalsIgnoreCase(String.valueOf(boxset.persistentId))) { DBHandler.getInstance(context).moveBoxsetToDeviceList(boxset); DownloadLibrarian.getInstance(context).stopDownload(boxset); } } } […]

将用于复制资产文件的java代码转换为Android中的缓存文件夹到Kotlin的最佳实践

我使用这个代码来将Android中的Asset文件复制到缓存文件夹,重点在于它是一个Java代码,我将它转换为Kotlin,但是它看起来更多的是围绕while循环的Java(ish): val file = File(“${cacheDir.path}/$fileName”) val dir = file.parentFile dir.mkdirs() val inputStream = assets.open(fileName) val bufferedOutputStream = BufferedOutputStream(FileOutputStream(file)) val buf = ByteArray(10240) var num = inputStream.read(buf) // Java version: while ((num = fi.read(buf)) > 0) while (num > 0) { bufferedOutputStream.write(buf, 0, num) num = inputStream.read(buf) } bufferedOutputStream.close() inputStream.close() 任何能使Kotlin更为专业的专家。

Kotlin:创建扩展函数文件?加

我正在Kotlin开发一些库,我没有find这个解决方案, 我怎么能解决这个问题, 这是说,创建扩展functionFile?.plus ,在Java中它的工作正常,但在Kotlin如何写这个代码? 先谢谢你。

记录Kotlin中函数参数的参数

比方说,我有一个更高阶的函数,它注册某种点击监听器。 我可以记录它的目的和传入的listener参数,如下所示: /** * Adds a [listener] that’s called when the item is clicked. * * @param listener The listener to add */ fun addClickListener(listener: (count: Int) -> Unit) { … } 我的问题是,有没有办法来记录listener的参数? 这将在这个例子中count 。 在我的实际使用情况中,我的侦听器中有多个参数。 我注意到的是[listener]文本在我使用这个函数的文档视图中是可点击的,但它只是显示一个空的对话框。 有没有办法在那里描述参数呢? 现在,我已经在addClickListener方法中用@param块描述了监听器的@param ,但是这会在IDE中产生一个警告,我想知道是否有更合适的方法来实现它。

Android kotlin:无法读取类文件

编辑:这比我想象的简单得多,我只需要清理项目! 我试图在一个包含GridView的片段中定义一个接口,以强制任何将附加片段来实现该接口和onImageSelected方法的活动。 有一次,我检查活动是否正确实现了接口,我把它转换到一个回调对象。 class MasterListFragment : Fragment(){ lateinit var mCallBack: OnImageClickListener interface OnImageClickListener{ fun onImageSelected(position: Int) } override fun onAttach(context: Context?) { super.onAttach(context) if(context !is OnImageClickListener) throw ClassCastException(context.toString() + “must implement OnImageClickListener”) else mCallBack = context } override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? { val view = inflater?.inflate(R.layout.fragment_master_list, container, false) var adapter […]