Android中的文件扫描

在android中我们有时会做有关电子书阅读器、音乐播放器等软件,那么我们就避免不了要对内存中的文件进行扫描,音乐播放器我们可以使用android自带的MediaProvider进行处理,而其他的不是媒体文件就要我们自己处理了,接下来我将介绍两种对内存文件进行扫描的方法,以.txt后缀名的文件为例。

第一种:

private void fileScan(File file){
			File[] files = file.listFiles();
			if(files!=null){
				for(File item : files){
					//item.isHidden()判断文件是否为隐藏的文件
					if(item.isDirectory()&&!item.isHidden()){
						//如果是文件夹进行再次扫描
						fileScan(item);
					}else if(!item.isHidden()&&item.getName().endsWith(".txt")){
						//判断是否以.txt后缀的文件
						//以下写上自己的处理,可以存到一个文件集合中List<File>
						
					}
				}
			}
		}
第二种:

	private void fileScan(File file){
				//FilenameFilter为文件过滤器
			file.listFiles(new FilenameFilter() {
				
				@Override
				public boolean accept(File dir, String filename) {
					//dir为扫描的文件的上级文件
					//filename为当前扫描到的文件名
					File file = new File(dir, filename);
					//item.isHidden()判断文件是否为隐藏的文件
					if(file.isDirectory()&&!file.isHidden()){
						//如果是文件夹进行再次扫描
						fileScan(file);
					}else if(!file.isHidden()&&file.getName().endsWith(".txt")){
						//判断是否以.txt后缀的文件
						//以下写上自己的处理,可以存到一个文件集合中List<File>					
					}
					return false;
				}
			});
		}






  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是在Android Studio实现蓝牙扫描的步骤: 1. 在AndroidManifest.xml文件添加蓝牙权限: ``` <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> ``` 2. 在布局文件添加一个按钮用于扫描: ``` <Button android:id="@+id/scanButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Scan"/> ``` 3. 在Activity的onCreate方法获取蓝牙适配器,并设置扫描按钮的点击事件: ``` BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); Button scanButton = findViewById(R.id.scanButton); scanButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (bluetoothAdapter.isEnabled()) { bluetoothAdapter.startDiscovery(); } else { Toast.makeText(MainActivity.this, "Bluetooth is not enabled", Toast.LENGTH_SHORT).show(); } } }); ``` 4. 在Activity注册广播接收器,用于接收蓝牙设备的扫描结果: ``` private final BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (BluetoothDevice.ACTION_FOUND.equals(action)) { BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); Log.d("Bluetooth", "Found device: " + device.getName() + " - " + device.getAddress()); } } }; @Override protected void onResume() { super.onResume(); IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND); registerReceiver(broadcastReceiver, filter); } @Override protected void onPause() { super.onPause(); unregisterReceiver(broadcastReceiver); } ``` 以上就是在Android Studio实现蓝牙扫描的基本步骤,你可以根据自己的需求对代码进行进一步的完善。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值