Итак, у меня был проект, требующий загрузки активов из хранилища firebase, поэтому мне самому пришлось решить эту проблему. Вот как:
1- Сначала сделайте модельные данные, например class Choice{}
. В этом классе определяется переменная String, называемая именем изображения, так что это будет так
class Choice {
.....
String imageName;
}
2- из базы данных / базы данных firebase, перейдите и скопируйте имена изображений в объекты, поэтому, если у вас есть имя изображения под названием Apple.png, создайте объект как
Choice myChoice = new Choice(...,....,"Apple.png");
3- Теперь, получить ссылку на активы в вашем хранилище firebase, что будет что-то вроде этого
gs://your-project-name.appspot.com/
4- наконец, инициализировать вашу firebase ссылку на хранилище и начать получать файлы с помощью такого цикла
storageRef = storage.getReferenceFromUrl(firebaseRefURL).child(imagePath);
File localFile = File.createTempFile("images", "png");
storageRef.getFile(localFile).addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
//Dismiss Progress Dialog\\
}
5-, что и есть
Измените эту строку:
Set tempHighNum = "000"
на следующее:
tempHighNum = "000"
Вы пытаетесь установить переменную tempHighNum в тип строки. Поэтому вам не следует использовать ключевое слово Set . Установить необходимо только при назначении типов объектов переменным.
Я не уверен, как работает ваш скрипт, поэтому я помещаю это приложение HTML вместе для вас. Он использует пакетный файл с именем Dir.Bat
, расположенный в C:\Batch
, который делает файл с именем Data.Txt
, расположенный в c:\Temp
. Затем сценарий берет верх. Скрипт читает файл Data.Txt по строкам. По мере чтения каждой строки два разделительных оператора используются для выделения строки в имени текстового файла. После этого я собираю те строки, содержащие числа, в переменную ListCol
, когда я тестирую большие и большие числа. Я, наконец, заканчиваю наибольшее число, которое я помещаю в исходную переменную tempHighNum
. Я отправлю файл HTA и файл Dir.Bat. Я знаю, что я не писал скрипт как функцию с использованием параметра, поэтому, если вам действительно нужно использовать параметр, я попытаюсь помочь вам, изменив файл HTA, чтобы можно было ввести путь и имя файла в TextBox. Это должно облегчить изменение и использование. Я добавил и изменил одну или две вещи, чтобы сделать ее более гладкой. Я не уверен, как работает ваш скрипт, поэтому я помещаю это приложение HTML вместе для вас. Он использует пакетный файл с именем Dir.Bat
, расположенный в C:\Batch
, который создает файл с именем Data.Txt
, расположенный в c:\Temp
. Затем сценарий берет верх. Скрипт читает файл Data.Txt по строкам. По мере чтения каждой строки два разделительных оператора используются для выделения строки в имени текстового файла. После этого я собираю те строки, содержащие числа, в переменную ListCol
, когда я тестирую большие и большие числа. Я, наконец, заканчиваю наибольшее число, которое я помещаю в исходную переменную tempHighNum
. Я отправлю файл HTA и файл Dir.Bat. Я знаю, что я не писал скрипт как функцию с использованием параметра, поэтому, если вам действительно нужно использовать параметр, я попытаюсь помочь вам, изменив файл HTA, чтобы можно было ввести путь и имя файла в TextBox. Это должно облегчить изменение и использование. Я добавил и изменил кое-что, чтобы сделать его более плавным.
<HTML><!-- C:\HTML_and_HTA_CODE_EXAMPLES\ATest.Hta -->
<HEAD>
<TITLE>ATest.Hta</TITLE>
<HTA:APPLICATION ID="HTA MyApp"
APPLICATIONNAME="Help4Saul Dolgin"
BORDER ="thick"
BORDERSTYLE ="complex"
CAPTION ="yes"
CONTEXTMENU ="no"
ICON ="http://Your URL/your icon.ico"
INNERBORDER ="yes"
MAXIMIZEBUTTON ="yes"
MINIMIZEBUTTON ="yes"
NAVIGABLE ="no"
SCROLL ="no"
SHOWINTASKBAR ="yes"
SINGLEINSTANCE ="yes"
SYSMENU ="yes"
VERSION ="1.0"
WINDOWSTATE ="Normal"/>
</HEAD>
<style>
.ExBt21 {background:"#E0E0E0";Color:"red";}/* For Exit Button */
.Spn4 {font-family:"arial";font-weight:"bold";Color:"blue"}
.Spn2 {Color:"red"}
.tAr1 {font-family:"arial";font-weight:"bold";Color:"blue"}
</style>
<SCRIPT Language="VBScript">
Sub GetFileNumber
Dim FSO, f, fc, tempHighNum, strLine, objSHO, line
Dim DataArr, Data1Arr, Data2Arr, ListCol
fc=""
ListCol=""
tempHighNum=000
Set objSHO=CreateObject("WScript.Shell")
objSHO.run "C:\Batch\Dir.bat"
Set FSO = CreateObject( "Scripting.FileSystemObject" )
Set f = FSO.OpenTextFile("c:\Temp\Data.Txt", "1")
Do Until f.AtEndOfStream
fc = fc & f.ReadLine & vbLf
Loop
tArea1.innerHTML=fc
Data1Arr = Split(fc,vbLf)
Count=UBound(Data1Arr)
For x=0 To Count
DataArr = Split(Data1Arr(x),".")
If x <= Count-1 Then
Data2Arr = Split(DataArr(0),"_")
ListCol = ListCol & Data2Arr(1) & vbLf
If Data2Arr(1) > tempHighNum Then
tempHighNum = Data2Arr(1)
End If
End If
Next
Span2.innerHTML=tempHighNum
End Sub
Sub ExtBtn:Window.close:End Sub' Exit Script For Window
</SCRIPT>
<BODY bgcolor="#D0D0D0">
<button OnClick="GetFileNumber">Button To Press</button><br/>
<span id="Span1" class="Spn1">The biggest No. is: </span><span id="Span2" class="Spn2"></span><br/><br/>
<span Id="Span3" Class="Spn3">Dir.Bat looks in: </span><span Id="Span4" Class="Spn4">C:\Temp\Log_???.Txt</span><br/>
<textarea Id="tArea1" class="tAr1" rows="10"></textarea><br/><br/>
<input id="ExBtn21" class="ExBt21" type="Button" name="ExitBtn21" OnClick="ExtBtn" value=" -Exit- "/><!-- Exit Button -->
</BODY>
</HTML>
Файл Dir.Bat следующий:
@Echo Off
Dir/B c:\Temp\Log_???.Txt>c:\Temp\Data.Txt