Здесь довольно много ошибок, все они в значительной степени связаны с тем, что вы не знаете синтаксис.
Может быть, стоит попытаться сначала изучить синтаксис.
Итак, давайте начнем с первого line.
FileString=""
Вы используете устаревший способ присвоения текста переменной. Переменная FileString
теперь содержит буквенный текст ""
.
. Чтобы исправить это, вы захотите избавиться от устаревшего синтаксиса и никогда не использовать его снова.
:=
используется для присвоения результата выражения переменной. Выражение ""
, которое оценивается как ничто .
Вторая строка в порядке, я думаю. Тем не менее, я отказался бы от использования устаревшей команды и переключился бы на FileOpen()
.
Кроме того, на самом деле не было необходимости определять переменную FileString
до того, как вы перейдете к этой команде. Это было излишним.
Третья строка, теперь вы используете правильный оператор для присвоения значения.
Итак, ошибка в этой строке в том, что вы используете синтаксис выражения. Не в устаревшем синтаксисе.
В более новом и лучшем синтаксисе выражений вы указываете строку (или, в вашем случае, просто символ), заключая ее в ""
. Как вы пытались сделать в первой строке.
Тогда у вас есть запятая. Я не знаю, о чем это должно быть, но это просто синтаксическая ошибка.
Итак, вот фиксированная строка:
ArrayOfCommaSeperatedValues := StrSplit(FileString, "`n")
И в четвертой строке вы получили опять не тот оператор. Вы не присваиваете буквальный текст переменной, как в устаревшем синтаксисе. Вы присваиваете результат выражения.
Здесь все исправлено:
FileString := FileOpen("Constants.csv", "r `n").Read()
ArrayOfCommaSeperatedValues := StrSplit(FileString, "`n")
LoopLength := ArrayOfCommaSeperatedValues.Length()
Или с помощью устаревшей команды FileRead
:
FileString := "" ;this line is redundant
FileRead, FileString, *t Constants.csv
ArrayOfCommaSeperatedValues := StrSplit(FileString, "`n")
LoopLength := ArrayOfCommaSeperatedValues.Length()
Важно отметить, что в устаревшей команде мы используем устаревший синтаксис. Строка не заключена в ""
.
Вот хорошая страница документации о языке сценариев AHK. Объясняет разницу между устаревшим и синтаксисом выражений. Это одна из проблем, с которой у вас, похоже, были проблемы.
https://www.autohotkey.com/docs/Language.htm
"Учебное пособие для начинающих" также должно быть хорошо прочитано:
https://www.autohotkey.com/docs/Tutorial.htm