Skip to content

Commit b32b22d

Browse files
author
fengjian
committed
add del method for FileLess
1 parent 74b7a5e commit b32b22d

5 files changed

Lines changed: 76 additions & 11 deletions

File tree

app/src/main/java/com/jayfeng/lesscode/app/activity/ActivityActivity.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,14 @@
44
import android.os.Bundle;
55

66
import com.jayfeng.lesscode.app.R;
7+
import com.jayfeng.lesscode.core.ActivityLess;
78

89
public class ActivityActivity extends Activity {
910

1011
@Override
1112
protected void onCreate(Bundle savedInstanceState) {
13+
ActivityLess.$noTitle(this);
14+
ActivityLess.$fullScreen(this);
1215
super.onCreate(savedInstanceState);
1316
setContentView(R.layout.activity_activity);
1417
}

app/src/main/java/com/jayfeng/lesscode/app/activity/AppActivity.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,44 @@
22

33
import android.app.Activity;
44
import android.os.Bundle;
5+
import android.view.View;
6+
import android.widget.Button;
7+
import android.widget.EditText;
58

69
import com.jayfeng.lesscode.app.R;
710
import com.jayfeng.lesscode.core.AppLess;
11+
import com.jayfeng.lesscode.core.FileLess;
12+
import com.jayfeng.lesscode.core.StorageLess;
813
import com.jayfeng.lesscode.core.ToastLess;
14+
import com.jayfeng.lesscode.core.ViewLess;
15+
16+
import java.io.File;
917

1018
public class AppActivity extends Activity {
1119

20+
private EditText deleteDirPathView;
21+
private Button deleteButton;
22+
1223
@Override
1324
protected void onCreate(Bundle savedInstanceState) {
1425
super.onCreate(savedInstanceState);
1526
setContentView(R.layout.activity_app);
1627

1728
ToastLess.$(this, "current package:" + AppLess.$running(getPackageName())
1829
+ ", else package:" + AppLess.$running("com.marriage"));
30+
31+
deleteDirPathView = ViewLess.$(this, R.id.del_dir_path);
32+
deleteButton = ViewLess.$(this, R.id.del_dir_btn);
33+
34+
deleteDirPathView.setText(StorageLess.Sdcard.$path().getPath() + "/test");
35+
36+
deleteButton.setOnClickListener(new View.OnClickListener() {
37+
@Override
38+
public void onClick(View v) {
39+
String path = deleteDirPathView.getText().toString();
40+
File dir = new File(path);
41+
FileLess.$del(dir, true);
42+
}
43+
});
1944
}
2045
}

app/src/main/java/com/jayfeng/lesscode/app/activity/MainActivity.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ public class MainActivity extends Activity {
3636

3737
@Override
3838
protected void onCreate(Bundle savedInstanceState) {
39-
ActivityLess.$noTitle(this);
40-
ActivityLess.$fullScreen(this);
4139
super.onCreate(savedInstanceState);
4240

4341
setContentView(R.layout.activity_main);
Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,25 @@
1-
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
2-
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
3-
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
4-
android:paddingRight="@dimen/activity_horizontal_margin"
5-
android:paddingTop="@dimen/activity_vertical_margin"
6-
android:paddingBottom="@dimen/activity_vertical_margin"
1+
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2+
xmlns:app="http://schemas.android.com/apk/res-auto"
3+
xmlns:tools="http://schemas.android.com/tools"
4+
android:layout_width="match_parent"
5+
android:layout_height="match_parent"
6+
android:orientation="vertical"
77
tools:context="com.jayfeng.lesscode.app.activity.AppActivity">
88

9-
<TextView android:text="@string/hello_world" android:layout_width="wrap_content"
10-
android:layout_height="wrap_content" />
9+
<com.jayfeng.lesscode.core.other.SpaceDividerView
10+
android:layout_width="match_parent"
11+
android:layout_height="1px"
12+
android:layout_marginBottom="16dp"
13+
android:layout_marginTop="16dp"
14+
app:spaceColor="#00ff00" />
1115

12-
</RelativeLayout>
16+
<EditText android:id="@+id/del_dir_path"
17+
android:layout_width="match_parent"
18+
android:layout_height="wrap_content"
19+
android:hint="delete directory"/>
20+
21+
<Button android:id="@+id/del_dir_btn"
22+
android:layout_width="wrap_content"
23+
android:layout_height="wrap_content"
24+
android:text="删除"/>
25+
</LinearLayout>

lesscode-core/src/main/java/com/jayfeng/lesscode/core/FileLess.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,4 +116,30 @@ public final class FileLess {
116116
}
117117
zipInputStream.close();
118118
}
119+
120+
/**
121+
* 删除文件或者文件夹,默认保留根目录
122+
* @param directory
123+
*/
124+
public static void $del(File directory) {
125+
$del(directory, false);
126+
}
127+
128+
/**
129+
* 删除文件或者文件夹
130+
* @param directory
131+
*/
132+
public static void $del(File directory, boolean keepRoot) {
133+
if (directory != null && directory.exists()) {
134+
if (directory.isDirectory()) {
135+
for (File subDirectory : directory.listFiles()) {
136+
$del(subDirectory, false);
137+
}
138+
}
139+
140+
if (!keepRoot) {
141+
directory.delete();
142+
}
143+
}
144+
}
119145
}

0 commit comments

Comments
 (0)