Я нашел решение в этом GitHub repo
Код:
Если вы хотите открыть & amp; browse file: FileBrowser.class
Intent intent = new Intent(activity, FileBrowser::class.java)
intent.putExtra(Constants.INITIAL_DIRECTORY, File(storageDirPath).absolutePath)
intent.putExtra(Constants.ALLOWED_FILE_EXTENSIONS,"*")
startActivityForResult(intent, CODE_INTENT )
Если вы хотите получить URI выбранного пользователем файла: FileChooser.class
Intent intent = new Intent(activity, FileChooser::class.java)
intent.putExtra(Constants.INITIAL_DIRECTORY, File(storageDirPath).absolutePath)
startActivityForResult(intent, CODE_INTENT )
Поскольку округление - это то, что считается справа, вы не можете его использовать, вы можете просто перейти от строки и использовать базовое регулярное выражение, чтобы заменить не первые 2 цифры на 0
:
int val = 1447948;
int res = Integer.valueOf((""+val).replaceAll("(?<=\\d{2})\\d", "0"));
// res : 1400000
(?<=\\d{2})\\d
соответствуют цифрам, у которых две цифры перед ними
Math - ваш друг.
int magnitude = (int) Math.pow(10, Math.log10(n) - 1)
int o = (int) Math.floor(n / magnitude) * magnitude
, где n
- номер входа, а o
- номер выхода.
Вы можете сделать это для любого числа, рассматривая его как строку:
int number = 1447948;
String number1 = String.valueOf(number);
String[] split = number1.split("");
StringBuilder number2 = new StringBuilder();
for (int i = 0; i < split.length; i++) {
if(i > 1)
number2.append("0");
else
number2.append(split[i]);
}
int result = Integer.parseInt(number2.toString());
System.out.println(result);
.replaceAll("(?<=\\d{2})\\d", "0")
( Демо ). – Pshemo 13 July 2018 в 08:32