• 0.00

  • 0.00

  • ,

com.javarush.task.task18.task1825 Работает, не проходит тестирование

Код рабочий, проверял. Пишет, что у меня не выполнено ни одно условие кроме 1-го

package com.javarush.task.task18.task1825;

/* 
Собираем файл
Собираем файл из кусочков.
Считывать с консоли имена файлов.
Каждый файл имеет имя: [someName].partN.
Например, Lion.avi.part1, Lion.avi.part2, …, Lion.avi.part37.
Имена файлов подаются в произвольном порядке. Ввод заканчивается словом «end«.
В папке, где находятся все прочтенные файлы, создать файл без суффикса [.partN].
Например, Lion.avi.
В него переписать все байты из файлов-частей используя буфер.
Файлы переписывать в строгой последовательности, сначала первую часть, потом вторую, …, в конце — последнюю.
Закрыть потоки.
Требования:
1. Программа должна считывать имена файлов с консоли, пока не будет введено слово "end".
2. Создай поток для записи в файл без суффикса [.partN] в папке, где находятся все считанные файлы.
3. В новый файл перепиши все байты из файлов-частей *.partN.
4. Чтение и запись должны происходить с использованием буфера.
5. Созданные для файлов потоки должны быть закрыты.
*/
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
public class Solution {
    public static void main(String[] args) throws IOException{
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        ArrayList<File> list = new ArrayList<>();
        while (true) {
            String name = reader.readLine();
            if (!name.equals("end"))
            list.add(new File(name));
            else break;
        }
/*Названия одинаковые, соответственно сортировка листа работает корректно от part1 до partN */
        Collections.sort(list);
        //файл создается в папке с предыдущими файлами
        String resultFile = list.get(0).getAbsolutePath().split(".part")[0] + "";
        File destFile = new File(resultFile);
        destFile.createNewFile();
        FileOutputStream outStream = new FileOutputStream(destFile);
//записывает все буфером
        for (File search : list) {
            FileInputStream inStream = new FileInputStream(search);
            byte[] buffer = new byte[inStream.available()];
            while (inStream.available() > 0) {
                int count = inStream.read(buffer);
                outStream.write(buffer,0,count);
            }
            inStream.close();
        }
        outStream.close();
        reader.close();
    }
}


Ввод:

*C:My programsCodingJavaRushTasks2.JavaCoresrccomjavarushtasktask18task1825avi.part3

C:My programsCodingJavaRushTasks2.JavaCoresrccomjavarushtasktask18task1825avi.part1

C:My programsCodingJavaRushTasks2.JavaCoresrccomjavarushtasktask18task1825avi.part2

end*

Вывод: (создается файл «avi» который содержит инфу 1,2,3 файлов в этой последовательности) «OneTwoThree»
  • ,

Как создать новый репозиторий без создания нового проекта?

Здравствуйте!

Как переключаться в idea между репозиториями и создать новый репозиторий без создания нового проекта?

Пожалуйста, подробнее, я тугодум(((0

Я хочу разбить JavaRush на 4 репозитория. Первый репозиторий создал на 10 уровне, сейчас я на 16 и в моем репозитории только 10-16 уровни.
При попытке создать новый проект через ИДЕЯ он мне зараза создает новый репозиторий со всеми файлами, и 0-10 и 10-16 уровня. А мне не надо 10-16 уровни добавлять. Как их убрать тоже не знаю и как переключаться между репозиториями в пределах одного проекта тоже не знаю.

Помогиите(
  • ,

com.javarush.test.level08.lesson03.task05; Работает правильно

/* Вывести на экран список значений
Есть коллекция HashMap<String, String>, туда занесли 10 различных строк.
Вывести на экран список значений, каждый элемент с новой строки.
*/

Здравствуйте!
Все работает как надо, не принимает. <br />
Если использовать не сокращенную версию вывода, проблему не решает. <br />

public class Solution
{
    public static void main(String[] args) throws Exception
    {
        HashMap<String, String> map = new HashMap<String, String>();
        map.put("Sim", "Sim");
        map.put("Tom", "Tom");
        map.put("Arbus", "Arbus");
        map.put("Baby", "Baby");
        map.put("Cat", "Cat");
        map.put("Dog", "Dog");
        map.put("Eat", "Eat");
        map.put("Food", "Food");
        map.put("Gevey", "Gevey");
        map.put("Hugs", "Hugs");

        printValues(map);
    }

    public static void printValues(Map<String, String> map)
    {
        //напишите тут ваш код
        for (Map.Entry<String,String>entry : map.entrySet())
            System.out.println(entry.getValue());
    }

}
  • ,

Инкапсуляция! Не могу вызвать переменную из другого класса.

Здравствуйте!
Задача мной придуманная, закрепляю материал.

Создал отдельный класс Input в котором код ввода данных от пользователя.
В main хочу поместить вывод, но не позволяет IDEА.
Объясните пожалуйста, рад любой критике и помощи.

package КалькуляторИпотеки;

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Telo
{
public static void main(String[] args){
Input.b =2;
//вот это переносится в main

System.out.println(«Стоимость жилья, » + Input.name + Input.sumHouse1);//как вызвать переменные name и sumHouse1 из Input ??
}
}
class Input{
static int b = 1;//вот это переносится в main
static void input ()throws Exception{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println(«Введите Ваше имя»);
String name = reader.readLine();
// Имя
System.out.println(«Введите стоимость приобретаемого жилья»);
String sumHouse = reader.readLine();
//стоимость жилья
int sumHouse1 = Integer.parseInt(sumHouse);