• 0.00

  • 0.00

  • ,

Маленькие хаки с javarush

Где-то весной, учился полтора месяца на JR. Делал это с edge (да да). Он автоматом растягивал изображение по ширине экрана,

В последствие достигнув 26 уровня я немного остановил темпы, так-как нашел работу в небольшом сайтостроительном агентстве (кодя на php :D). Так как чувства, которые я испытываю к java слишком сильные я решил вернуться сюда и продолжить обучение.Зашел я на сайт с google chrome, потому-что осознал какое же уг (в fronend, отладке и тд) edge. И тут я увидел это.

Мне дико не понравились полоски по краям и то что текст не выравнивается по ширине экрана.
Если кому-то тоже не понравятся данные полоски, прилагаю решение для устранения их.

Нажимаем f12 в google chrome, в остальных же браузерах (кроме оперы) эта клавиша работает одинаково. В opera это Инструменты > Дополнительно > Средства для разработчика.
Находим следующий код, и стиль к нему.

Отключаем его.

Сайт встал по ширине экрана, но основная текстовая часть не встала так-как надо, поэтому переходим сюда.И отключаем следующие стили. (они отвечают за ширину контейнерной части на разных разрешениях экрана)

Воаля, после данных нехитрых операций сайт становится вот таким


Правда стоит упомянуть, что при открытие новой вкладки, все изменения сбросятся. Но и это тоже можно обойти например Этим плагином для браузера.
  • ,

task18.task1827 CrUD прайсы


package com.javarush.task.task18.task1827;

/* 
Прайсы
CrUD для таблицы внутри файла.
Считать с консоли имя файла для операций CrUD.
Программа запускается со следующим набором параметров:
-c productName price quantity
Значения параметров:
где id — 8 символов.
productName — название товара, 30 chars (60 bytes).
price — цена, 8 символов.
quantity — количество, 4 символа.
-c — добавляет товар с заданными параметрами в конец файла, генерирует id самостоятельно, инкрементируя максимальный id, найденный в файле.
В файле данные хранятся в следующей последовательности (без разделяющих пробелов):
id productName price quantity
Данные дополнены пробелами до их длины.
Пример:
19846 Шорты пляжные синие 159.00 12
198478 Шорты пляжные черные с рисунко173.00 17
19847983Куртка для сноубордистов, разм10173.991234
*/
import java.io.*;

public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
        String FILE_NAME = bufferedReader.readLine();
        String productNAME = "";
        for (int i = 1; i < args.length-2; i++) {
            productNAME += args[i]+" ";
        }
        if (productNAME.length()>29){
           productNAME = productNAME.substring(0,29);
        }
        String price  = args[args.length-2];
        if (price.length()>7){
            price = price.substring(0,7);
        }
        String qaluty = args[args.length-1];
        if (qaluty.length()>3){
            qaluty = qaluty.substring(0,3);
        }

        if (args[0].equals("-c")) {
            BufferedReader reader = new BufferedReader(new FileReader(FILE_NAME));
            String a = "";
            while (reader.ready()) {
                a = reader.readLine();
            }
            reader.close();
            String ID = "";
            try {
                String[] strings = a.split("\\D+");
                ID = strings[0];
            } catch (Exception e) {
            }
            if (ID.length() > 7) {
                ID = ID.substring(0, 7);
            }
            int countID = Integer.parseInt(ID) + 1;
            String text = countID + productNAME + price + qaluty;
            BufferedWriter bw = new BufferedWriter(new FileWriter(FILE_NAME, true));
            bw.newLine();
            bw.write(text);
            bw.flush();
        }
    }
}

Написал код, затестил его на своем компе. Ищет последнюю строчку и прибавляет 1 к ID. Вроде-бы антибугурт, но валидатор не хочет принимать. Подскажите что не правильно.
  • ,

Хотелось бы узнать поподробнее

от не дает мне покоя один в опрос. Каким образом работает сей чудесный код (который описан в задаче)
FileInputStream inputStream = new FileInputStream("c:/data.txt");
        // Создаем поток-записи-байт-в-файл
        FileOutputStream outputStream = new FileOutputStream("c:/result.txt");
        byte[] buffer = new byte[1000];
        if (inputStream.available()>0) {
            //читаем весь файл одним куском
            int count = inputStream.read(buffer);
            outputStream.write(buffer, 0, count);
        }

        inputStream.close();
        outputStream.close();

Вопрос такой.Каким образом масиву
byte[] buffer = new byte[1000];

Присваивается значение от («c:/data.txt»);