2015-03-11 4 views
-1

У меня есть сценарий, который бросает эту ошибку.Ошибка синтаксиса, неожиданный конец файла

Это обычно означает, что существует цикл (как if или do), который не закончился правильно, или слишком много end положения. Я не могу найти проблему. Любые хорошие советы о том, как идентифицировать этот тип синтаксической ошибки?

Это также может быть проблема с двойной кавычкой. Удивление, если есть способ (в ультра-редактировании или текстовом редакторе) обнаруживать строки сценария, которые имеют четное число двойных кавычек.

+4

Ну, первый совет - опубликовать свой код. Вы получите нулевую помощь в поиске и устранении неполадок кода, который никто не видит. – Beartech

+2

Прокомментируйте некоторые строки, чтобы запустить код, начните удалять прокомментированные строки до тех пор, пока он не сломается. Если вы все еще не можете найти его, отправьте свой код. – Godwin

+1

Если вы используете хороший отступ, обычно довольно легко смотреть вверх и вниз и следить за тем, чтобы все ваши петли имели и 'end' – dwenzel

ответ

-1

Ничего, я нашел проблему. Я прокомментировал новое определение, которое я добавил, и оно запустилось. Это дало мне знать, что это определение. Затем я взял это и прошел через гребень. Обнаружил, что я проверяю значение, но не допустил, чтобы оно было ничтожным или пустым. Добавил, что и сейчас я хорош.

+1

Забыть проверить случай в условном выражении является семантической ошибкой и не может ввести «SyntaxError», поэтому включение этого случая не может исправить его или, по крайней мере, только случайно. –

2

В ответ на: «Возможно, это может быть проблема с двойной кавычкой. Удивление, если есть способ обнаружить любые строки сценария (в ультра-редактировании или текстовом редакторе), где есть четное число двойных кавычек ".

Sublime is a great editor that is available for most platforms.

1

Для первого вопроса, закомментируйте блоки кода с помощью =begin ... =end и/или # ... и сузить ошибку.

Для второго вопроса используйте подсветку синтаксиса в текстовом редакторе. Вы можете легко сказать, как долго продолжается непрерывный литерал, и найти неуравновешенные кавычки.

Смежные вопросы