diff --git a/task01/src/com/example/task01/Task01Main.java b/task01/src/com/example/task01/Task01Main.java index 5dfc11b0..7fcbcee8 100644 --- a/task01/src/com/example/task01/Task01Main.java +++ b/task01/src/com/example/task01/Task01Main.java @@ -1,20 +1,30 @@ package com.example.task01; +import java.io.BufferedReader; import java.io.File; import java.io.IOException; +import java.io.InputStreamReader; public class Task01Main { public static void main(String[] args) throws IOException, InterruptedException { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - - /* System.out.println(extractSoundName(new File("task01/src/main/resources/3727.mp3"))); - */ } - public static String extractSoundName(File file) throws IOException, InterruptedException { - // your implementation here - return "sound name"; + public static String extractSoundName(File file) throws IOException, InterruptedException + { + + ProcessBuilder pb = new ProcessBuilder(); + pb.command("C:/Users/sajbu/Downloads/ffmpeg3/bin/ffprobe.exe", "-v", "error", "-of", "flat", "-show_format", file.getCanonicalPath()); + Process p = pb.start(); + + try (BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()))) + { + String string = ""; + while (!string.contains("format.tags.title")) + { + string = reader.readLine(); + } + return string.substring(19).replace("\"",""); + } } -} +} \ No newline at end of file diff --git a/task02/src/com/example/task02/Task02Main.java b/task02/src/com/example/task02/Task02Main.java index 750f7bab..11b1c9cf 100644 --- a/task02/src/com/example/task02/Task02Main.java +++ b/task02/src/com/example/task02/Task02Main.java @@ -1,23 +1,25 @@ package com.example.task02; import java.io.IOException; +import java.nio.file.Files; import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Stream; public class Task02Main { public static void main(String[] args) throws IOException, InterruptedException { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - - /* System.out.println(listFiles(Paths.get("task02/src/main/resources/"))); - */ - } public static List listFiles(Path rootDir) throws IOException, InterruptedException { - // your implementation here - return null; + List result = new ArrayList<>(); + try(Stream paths = Files.walk(rootDir)) + { + paths.filter(ins -> ins.toFile().isFile()).forEach(result::add); + } + return result; } } diff --git a/task03/src/com/example/task03/SampleData.java b/task03/src/com/example/task03/SampleData.java index 0654af50..e9074a87 100644 --- a/task03/src/com/example/task03/SampleData.java +++ b/task03/src/com/example/task03/SampleData.java @@ -1,23 +1,27 @@ package com.example.task03; +import java.io.Serializable; import java.util.Date; import java.util.Objects; -public class SampleData { +public class SampleData implements Serializable +{ static final long serialVersionUID = 132706691457162967L; String name; int value; Date date; - public SampleData(String name, int value, Date date) { + public SampleData(String name, int value, Date date) + { this.name = name; this.value = value; this.date = date; } @Override - public boolean equals(Object o) { + public boolean equals(Object o) + { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; SampleData that = (SampleData) o; @@ -39,4 +43,4 @@ public String toString() { ", date=" + date + '}'; } -} +} \ No newline at end of file diff --git a/task03/src/com/example/task03/Task03Main.java b/task03/src/com/example/task03/Task03Main.java index 740fff14..951c82b6 100644 --- a/task03/src/com/example/task03/Task03Main.java +++ b/task03/src/com/example/task03/Task03Main.java @@ -1,21 +1,24 @@ package com.example.task03; +import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.io.ObjectInputStream; -public class Task03Main { - public static void main(String[] args) throws IOException, ClassNotFoundException { +public class Task03Main +{ + public static void main(String[] args) throws IOException, ClassNotFoundException + { //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат // например вот так: - /* System.out.println(deserialize(new FileInputStream("task03/src/main/resources/example1.bin"))); - */ - } - public static SampleData deserialize(InputStream inputStream) throws IOException, ClassNotFoundException { + public static SampleData deserialize(InputStream inputStream) throws IOException, ClassNotFoundException + { // your implementation here - return null; + ObjectInputStream ois = new ObjectInputStream(inputStream); + return ((SampleData) ois.readObject()); } -} +} \ No newline at end of file