|
|
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием. Приходится удалять первые 7 строк вручную, так как чтение из файла захлебывается Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. .csv# Метеостанция Москва (ВВЦ), Россия, WMO_ID=27612, выборка с 01.01.2011 по 31.01.2011, все дни # Кодировка: ANSI # Данные предоставлены WEB-сайтом "Расписание Погоды", rp5.ru # Пожалуйста, при использовании данных, любезно указывайте названный сайт. # Обозначения метеопараметров см. по адресу http://rp5.ru/archive.php?wmo_id=27612&lang=ru # "Местное время в Москве (ВВЦ)";"T";"Po";"P";"U";"DD";"Ff";"ff10";"ff3";"N";"WW";"W1";"W2";"Tn";"Tx";"Cl";"Nh";"H";"Cm";"Ch";"VV";"Td";"RRR";"tR";"E";"E'";"sss" "31.01.2011 22:00";"-10.6";"749.0";"764.4";"90";"ШТЛ";"0";"";"";"100%.";"Дымка.";"Облака покрывали более половины неба в течение одной части соответствующего периода и половину или менее в течение другой части периода.";"Облака покрывали более половины неба в течение одной части соответствующего периода и половину или менее в течение другой части периода.";"";"-6.0";"";"Облаков нет.";"2000-2500";"";"Перистые (часто в виде полос) и перисто-слоистые, распространяющиеся по небу и в целом обычно уплотняющиеся; сплошная пелена, поднимающаяся над горизонтом выше 45°, не покрывает всего неба.";"";"-11.9";"";"";"";"";""; "31.01.2011 19:00";"-9.9";"749.1";"764.4";"81";"ШТЛ";"0";"";"";"10% или менее, но не 0";"";"";"";"";"";"";"Облаков нет.";"2000-2500";"";"Перистые нитевидные, иногда когтевидные, не распространяющиеся по небу.";"";"-12.5";"";"";"";"";""; "31.01.2011 16:00";"-6.8";"748.5";"763.6";"66";"С";"2";"";"";"Облаков нет.";"Состояние неба в общем не изменилось.";"Метель";"Облака покрывали половину неба или менее в течение всего соответствующего периода.";"";"";"";"";"";"";"";"10.0";"-12.0";"";"";"";"";""; "31.01.2011 13:00";"-7.8";"747.7";"762.8";"73";"С";"2";"";"";"Облаков нет.";"Состояние неба в общем не изменилось.";"Метель";"Облака покрывали половину неба или менее в течение всего соответствующего периода.";"";"";"";"";"";"";"";"10.0";"-11.8";"";"";"";"";""; "31.01.2011 10:00";"-6.0";"745.0";"760.0";"76";"С";"3";"";"";"20–30%.";"Слабый или умеренный поземок в целом низкий (ниже уровня глаз наблюдателя).";"Снег и/или другие виды твердых осадков";"Метель";"-6.0";"";"Слоисто-кучевые, образовавшиеся не из кучевых.";"20–30%.";"600-1000";"";"";"10.0";"-9.5";"1.0";"12";"";"Ровный слой сухого рассыпчатого снега покрывает поверхность почвы полностью.";"41.0"; "31.01.2011 07:00";"-4.6";"741.7";"756.5";"83";"С";"3";"";"";"100%.";"Снег неливневый.";"Снег и/или другие виды твердых осадков";"Метель";"";"";"Слоисто-кучевые, образовавшиеся не из кучевых.";"70 – 80%.";"600-1000";"Высокослоистые просвечивающие.";"Перисто-кучевые одни или перисто-кучевые, сопровождаемые перистыми или перисто-слоистыми, либо те и другие, но перисто-кучевые преобладают среди них.";"";"-7.0";"1.0";"12";"";"";""; "31.01.2011 04:00";"-2.8";"738.4";"753.0";"84";"С";"3";"";"";"100%.";"Снег непрерывный слабый в срок наблюдения.";"Снег и/или другие виды твердых осадков";"Метель";"";"";"Слоисто-кучевые, образовавшиеся не из кучевых.";"70 – 80%.";"600-1000";"Высокослоистые просвечивающие.";"Перисто-кучевые одни или перисто-кучевые, сопровождаемые перистыми или перисто-слоистыми, либо те и другие, но перисто-кучевые преобладают среди них.";"";"-5.1";"";"";"";"";""; "31.01.2011 01:00";"-2.2";"734.6";"749.2";"91";"СЗ";"2";"";"";"100%.";"Снег непрерывный слабый в срок наблюдения.";"Снег и/или другие виды твердых осадков";"Облака покрывали более половины неба в течение всего соответствующего периода.";"";"";"Слоисто-кучевые, образовавшиеся не из кучевых.";"70 – 80%.";"600-1000";"Высокослоистые просвечивающие.";"Перисто-кучевые одни или перисто-кучевые, сопровождаемые перистыми или перисто-слоистыми, либо те и другие, но перисто-кучевые преобладают среди них.";"";"-3.4";"";"";"";"";""; "30.01.2011 22:00";"-1.6";"732.5";"747.0";"86";"З";"2";"";"";"100%.";"Дымка.";"Снег и/или другие виды твердых осадков";"Метель";"";"-1.6";"Слоисто-кучевые, образовавшиеся не из кучевых.";"70 – 80%.";"600-1000";"Высокослоистые просвечивающие.";"Перисто-кучевые одни или перисто-кучевые, сопровождаемые перистыми или перисто-слоистыми, либо те и другие, но перисто-кучевые преобладают среди них.";"";"-3.6";"1.0";"12";"";"";""; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 16:23:50 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Вот такой выход из итерации не помог if (substr($data[0], 0, 1)=="#") {continue;} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 16:54:02 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Решетка вовсе не обязана быть в начале строки. Перед ней могут быть пробелы. Так же в строке конец строки может быть двухбайтовым, а php может считает однобайтовым - второй байт окажется началом следующей строки как мусор. В общем, после чтения желательно делать строке trim(). Так же, никто тебе не мешает вывести на экран код первого символа, чтобы узнать, что там вместо решетки. P.S.: - параметр длины при чтении строки давно не обязателен, поэтому на всякий случай убери 4096; - к символам строки можно обращаться как к массиву, т.е. $data[0] - это и так первый символ строки! Зачем ты его еще пихал в substr()? =))) В общем, твоя задача - вывести на экран $data[0] (заодно и в числовом виде, а то вдруг там что непечатаемое). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 17:05:37 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
А, сорри, я понял. Ты сначала строку разбил на запчасти, а потом уже проверял на решетку? Логично же на решетку проверять сразу после чтения, т.е. до explode(). Зачем выполнять дурную работу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 17:08:10 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Сделал так: автор$f = fopen("2011-December.csv", "rt") or die("Ошибка!"); while (!feof ($f)) { $buffer = fgets($f, 4096); if (substr($data[0], 0, 1)=="#") {continue;} $data = explode(";", $buffer); if ($data[5]=="ШТЛ"){$shtl=$shtl+1;} if ($data[5]=="В"){$v=$v+$data[6];} if ($data[5]=="ВСВ"){$vsv=$vsv+$data[6];} if ($data[5]=="ВЮВ"){$vuv=$vuv+$data[6];} if ($data[5]=="З"){$z=$z+$data[6];} if ($data[5]=="ЗСЗ"){$zsz=$zsz+$data[6];} if ($data[5]=="ЗЮЗ"){$zuz=$zuz+$data[6];} if ($data[5]=="С"){$s=$s+$data[6];} if ($data[5]=="СВ"){$sv=$sv+$data[6];} if ($data[5]=="СЗ"){$sz=$sz+$data[6];} if ($data[5]=="ССВ"){$ssv=$ssv+$data[6];} if ($data[5]=="ССЗ"){$ssz=$ssz+$data[6];} if ($data[5]=="Ю"){$u=$u+$data[6];} if ($data[5]=="ЮВ"){$uv=$uv+$data[6];} if ($data[5]=="ЮЗ"){$uz=$uz+$data[6];} if ($data[5]=="ЮЮВ"){$uuv=$uuv+$data[6];} if ($data[5]=="ЮЮЗ"){$uuz=$uuz+$data[6];} } Не сработало. Должно работать вот так: http://stretchfilm.byethost13.com/2012-January.php .csv с удаленной вручную шапкой: http://stretchfilm.byethost13.com/2012-January.csv А получается так: http://stretchfilm.byethost13.com/2011-December.php .csv с шапкой: http://stretchfilm.byethost13.com/2011-December.csv ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 17:33:36 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Ну ты хоть немного вдумываешься в то, что кодишь?! Код: php 1. 2. 1. Что такое $data? При чем тут $data, если ты читаешь строку в $buffer? 2. Еще раз, substr() зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 17:37:25 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Поправил на if (substr($buffer[0], 0, 1)=="#") {continue;} Не работает. Как правильно? С помощью substr получаю первый символ, если строка начинается с "#", то continue. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 19:43:36 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:13:11 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
А почему оно должно работать? Если хотите просто удалить строки начинающиеся с решетки, то можно сделать так: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:14:55 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Я разбираю файл .csv, а вы мне даете пример со строковыми переменными ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:42:01 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Код: php 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:44:46 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:46:59 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Admin_VladЯ разбираю файл .csv, а вы мне даете пример со строковыми переменными И что? Это мешает пониманию того КАК получить первый символ и того факта, что если он решетка, то таки решетка? Или работая с файлом нельзя пользоваться оператором echo как в примере, чтобы разобраться в своей уборной самостоятельно и обнаружить наконец-то, что же там за символ в начале вместо решетки? Если даже с такими вещами сложности, то остается гадать на кофейной гуще. А пример со строками к тому, что при работе с файлами все точно так же и ни на йоту не сложнее. В чем может быть проблема, я описывал ранее, еще задолго до примера. Вы проигнорировали, не произвели у себя никаких проверок. Так о чем дальше то говорить? Давайте я их за вас сделаю. Давайте доступ к сайту и кидайте денег на вебмани - разберемся, что у вас там за мусор попадает в строки. Но право же - элементарные вещи, которым стоит научиться - выводить интересующие данные командой echo... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 20:58:00 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Hett, зачем нужно делать дамп информации о переменной? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 21:04:41 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
чтобы посмотреть что в ней находится наверно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2012, 21:13:04 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста, почему не читается строка "ЮВ" в одном поле: [5]=> string(0) "" а в другом читается: [15]=> string(39) "-кучевые, образовавшиеся не из кучевых." http://stretchfilm.byethost13.com/2006-2011.php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2012, 18:48:24 |
|
||
|
Как скипнуть первые 7 строк из .csv? В них не данные, а шапка с описанием.
|
|||
|---|---|---|---|
|
#18+
строка: автор01.01.2006 1:00;-5.3;755.4;770.6;93;ЮВ;2;;;100%.;Дымка.;Облака покрывали более половины неба в течение всего соответствующего периода.;Облака покрывали более половины неба в течение всего соответствующего периода.;;;Слоисто-кучевые, образовавшиеся не из кучевых.;100%.;200-300;Высококучевые башенкообразные или хлопьевидные.;Перисто-кучевые одни или перисто-кучевые, сопровождаемые перистыми или перисто-слоистыми, либо те и другие, но перисто-кучевые преобладают среди них.;;-6.3;;;;; Код: Код: php 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2012, 18:50:00 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=147&tid=1465224]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
83ms |
get topic data: |
10ms |
get forum data: |
5ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 216ms |
| total: | 403ms |

| 0 / 0 |
